From 1e64272a4a6abd997cc363f4f2fb8767bd181a9a Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 15 Sep 2023 12:44:38 -0800 Subject: [PATCH 01/95] adds ASFProduct subclasses for S1, S1 Burst, ALOS, and Radarsat products --- asf_search/ASFProduct.py | 115 +++++++++++++++++- .../ASFSearchOptions/ASFSearchOptions.py | 2 +- asf_search/ASFSearchOptions/validator_map.py | 6 +- asf_search/CMR/UMMFields.py | 113 +++++++++++++++++ asf_search/CMR/__init__.py | 3 +- asf_search/Products/ALOSProduct.py | 53 ++++++++ asf_search/Products/RadarsatProduct.py | 47 +++++++ asf_search/Products/S1BURSTProduct.py | 56 +++++++++ asf_search/Products/S1Product.py | 93 ++++++++++++++ asf_search/Products/__init__.py | 4 + asf_search/search/baseline_search.py | 3 +- asf_search/search/search_generator.py | 13 +- 12 files changed, 494 insertions(+), 14 deletions(-) create mode 100644 asf_search/CMR/UMMFields.py create mode 100644 asf_search/Products/ALOSProduct.py create mode 100644 asf_search/Products/RadarsatProduct.py create mode 100644 asf_search/Products/S1BURSTProduct.py create mode 100644 asf_search/Products/S1Product.py create mode 100644 asf_search/Products/__init__.py diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 67694e82..a1f2b1c2 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,29 +1,51 @@ import warnings +from typing import List from shapely.geometry import shape, Point, Polygon, mapping import json from asf_search import ASFSession, ASFSearchResults -from asf_search.ASFSearchOptions import ASFSearchOptions +from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.download import download_url -from asf_search.CMR import translate_product +# from asf_search.CMR import translate_product from remotezip import RemoteZip from asf_search.download.file_download_type import FileDownloadType from asf_search import ASF_LOGGER +from asf_search.CMR.translate import cast, try_round_float, get_state_vector +from asf_search.CMR.translate import get as umm_get +from asf_search.CMR import umm_property_paths, umm_property_typecasting +# Myabe just these keys???? +#start and stop time (maybe) +# - fileID +# - platform +# - geoemetry class ASFProduct: + base_properties = { + # min viable product + 'centerLat', + 'centerLon', + 'fileID', # secondary search results sort key + 'flightDirection', + 'pathNumber', + 'stopTime', # primary search results sort key + 'processingLevel', + 'url' + } + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.meta = args.get('meta') self.umm = args.get('umm') - translated = translate_product(args) + translated = self.translate_product(args) self.properties = translated['properties'] self.geometry = translated['geometry'] - self.baseline = translated['baseline'] + self.baseline = None self.session = session + def __str__(self): return json.dumps(self.geojson(), indent=2, sort_keys=True) @@ -102,7 +124,7 @@ def stack( return stack_from_product(self, opts=opts) - def get_stack_opts(self) -> ASFSearchOptions: + def get_stack_opts(self, opts: ASFSearchOptions=None) -> ASFSearchOptions: """ Build search options that can be used to find an insar stack for this product @@ -134,3 +156,86 @@ def remotezip(self, session: ASFSession) -> RemoteZip: from .download.download import remotezip return remotezip(self.properties['url'], session=session) + + def translate_product(self, item: dict) -> dict: + try: + coordinates = item['umm']['SpatialExtent']['HorizontalSpatialDomain']['Geometry']['GPolygons'][0]['Boundary']['Points'] + coordinates = [[c['Longitude'], c['Latitude']] for c in coordinates] + geometry = {'coordinates': [coordinates], 'type': 'Polygon'} + except KeyError: + geometry = {'coordinates': None, 'type': 'Polygon'} + + umm = item.get('umm') + + properties = { + prop: umm_get(umm, *umm_key_value) for prop, umm_key_value in self._get_property_paths().items() + } + + for key, cast_type in umm_property_typecasting.items(): + if properties.get(key) is not None: + properties[key] = cast(cast_type, properties.get(key)) + + + if properties.get('url') is not None: + properties['fileName'] = properties['url'].split('/')[-1] + else: + properties['fileName'] = None + + # Fallbacks + if properties.get('beamModeType') is None: + properties['beamModeType'] = umm_get(umm, *umm_property_paths['beamMode']) + + if properties.get('platform') is None: + properties['platform'] = umm_get(umm, *umm_property_paths['platformShortName']) + + # asf_frame_platforms = ['Sentinel-1A', 'Sentinel-1B', 'ALOS', 'SENTINEL-1A', 'SENTINEL-1B'] + # if properties['platform'] in asf_frame_platforms: + # properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0)) + # else: + # properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0)) + + return {'geometry': geometry, 'properties': properties, 'type': 'Feature'} + + # ASFProduct subclasses define extra/override param key + UMM pathing here + @staticmethod + def _get_property_paths() -> dict: + return { + prop: umm_path + for prop in ASFProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + } + + def get_baseline_calc_properties(self) -> dict: + return {} + + def get_default_product_type(self): + # scene_name = product.properties['sceneName'] + + # if get_platform(scene_name) in ['AL']: + # return 'L1.1' + # if get_platform(scene_name) in ['R1', 'E1', 'E2', 'J1']: + # return 'L0' + # if get_platform(scene_name) in ['S1']: + # if product.properties['processingLevel'] == 'BURST': + # return 'BURST' + # return 'SLC' + return None + + + # static helper methods for product type checking + @staticmethod + def get_platform(item: dict): + if (platform := umm_get(item.get('umm'), *umm_property_paths['platform'])) is not None: + return platform + + return umm_get(item.get('umm'), *umm_property_paths['platformShortName']) + + @staticmethod + def get_product_type(item: dict): + return umm_get(item.get('umm'), *umm_property_paths['processingLevel']) + + + @staticmethod + def is_valid_product(item: dict): + return False + \ No newline at end of file diff --git a/asf_search/ASFSearchOptions/ASFSearchOptions.py b/asf_search/ASFSearchOptions/ASFSearchOptions.py index 5200b189..8b1103e7 100644 --- a/asf_search/ASFSearchOptions/ASFSearchOptions.py +++ b/asf_search/ASFSearchOptions/ASFSearchOptions.py @@ -114,7 +114,7 @@ def merge_args(self, **kwargs) -> None: # Spit out warning if the value is something other than the default: if not self._is_val_default(key): msg = f'While merging search options, existing option {key}:{getattr(self, key, None)} overwritten by kwarg with value {kwargs[key]}' - ASF_LOGGER.warging(msg) + ASF_LOGGER.warning(msg) warnings.warn(msg) self.__setattr__(key, kwargs[key]) diff --git a/asf_search/ASFSearchOptions/validator_map.py b/asf_search/ASFSearchOptions/validator_map.py index 64162bc1..4129b774 100644 --- a/asf_search/ASFSearchOptions/validator_map.py +++ b/asf_search/ASFSearchOptions/validator_map.py @@ -57,12 +57,12 @@ def validate(key, value): 'instrument': parse_string, 'collections': parse_string_list, 'temporalBaselineDays': parse_string_list, + 'absoluteBurstID': parse_int_list, + 'relativeBurstID': parse_int_list, + 'fullBurstID': parse_string_list, # Config parameters Parser 'session': parse_session, 'host': parse_string, 'provider': parse_string, - 'absoluteBurstID': parse_int_list, - 'relativeBurstID': parse_int_list, - 'fullBurstID': parse_string_list } diff --git a/asf_search/CMR/UMMFields.py b/asf_search/CMR/UMMFields.py new file mode 100644 index 00000000..3850c163 --- /dev/null +++ b/asf_search/CMR/UMMFields.py @@ -0,0 +1,113 @@ +from asf_search.CMR.translate import get_state_vector + +# common UMM properties and their UMM paths + +umm_property_paths = { + 'beamModeType': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0], + 'browse': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])], + 'bytes': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], + 'centerLat': [ 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], + 'centerLon': [ 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0], + 'faradayRotation': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], + 'fileID': [ 'GranuleUR'], + 'flightDirection': [ 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0], + 'groupID': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0], + 'granuleType': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], + 'insarStackId': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0], + 'md5sum': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0], + 'offNadirAngle': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], + 'orbit': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], + 'pathNumber': [ 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0], + 'platform': [ 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0], + 'pointingAngle': [ 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0], + 'polarization': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0], + 'processingDate': [ 'DataGranule', 'ProductionDateTime'], + 'processingLevel': [ 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0], + 'sceneName': [ 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'], + 'sensor': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], + 'startTime': [ 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'], + 'stopTime': [ 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'], + 'url': [ 'RelatedUrls', ('Type', 'GET DATA'), 'URL'], + 'pgeVersion': ['PGEVersionClass', 'PGEVersion'], + 'frameNumber': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], + # 'frameNumber': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], + + # baseline (state vectors) + 'ascendingNodeTime': ['AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0], + 'sv_position_pre': ['AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0], + 'sv_position_post': ['AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0], + 'sv_velocity_pre': ['AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0], + 'sv_velocity_post': ['AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0], + + # baseline (precalc) + 'insarBaseline': ['AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0], + + # bursts + 'absoluteBurstID': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], + 'relativeBurstID': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], + 'fullBurstID': ['AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0], + 'burstIndex': ['AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0], + 'samplesPerBurst': ['AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0], + 'subswath': ['AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0], + 'azimuthTime': ['AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0], + 'azimuthAnxTime': ['AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0], + 'RelatedUrls': ['RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0], + 'byteLength': ['AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0], # alt for bytes + + # Platform/Product specific overrides + 'S1AlosFrameNumber': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) + + # Fallbacks + 'platformShortName': ['Platforms', 0, 'ShortName'], # fallback for 'platform' + 'beamMode': ['AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0] # fallback to 'beamModeType' + } + +umm_property_typecasting = { + 'bytes': int, + 'centerLat': float, + 'centerLon': float, + 'faradayRotation': float, + 'offNadirAngle': float, + 'orbit': int, + 'pathNumber': int, + 'pointingAngle': float, + 'frameNumber': int, + 'sv_position_pre': get_state_vector, + 'sv_position_post': get_state_vector, + 'sv_velocity_pre': get_state_vector, + 'sv_velocity_post': get_state_vector, + 'absoluteBurstID': int, + 'relativeBurstID': int, + 'burstIndex': int, + 'samplesPerBurst': int, + 'byteLength': int +} + +# properties = { +# 'beamModeType': get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0), +# 'browse': get(umm, 'RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])), +# 'bytes': cast(int, try_round_float(get(umm, 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0))), +# 'centerLat': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0)), +# 'centerLon': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0)), +# 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), +# 'fileID': get(umm, 'GranuleUR'), +# 'flightDirection': get(umm, 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0), +# 'groupID': get(umm, 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0), +# 'granuleType': get(umm, 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0), +# 'insarStackId': get(umm, 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0), +# 'md5sum': get(umm, 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0), +# 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), +# 'orbit': cast(int, get(umm, 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber')), +# 'pathNumber': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0)), +# 'platform': get(umm, 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0), +# 'pointingAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0)), +# 'polarization': get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0), +# 'processingDate': get(umm, 'DataGranule', 'ProductionDateTime'), +# 'processingLevel': get(umm, 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0), +# 'sceneName': get(umm, 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'), +# 'sensor': get(umm, 'Platforms', 0, 'Instruments', 0, 'ShortName'), +# 'startTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'), +# 'stopTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'), +# 'url': get(umm, 'RelatedUrls', ('Type', 'GET DATA'), 'URL'), +# 'pgeVersion': get(umm, 'PGEVersionClass', 'PGEVersion') +# } \ No newline at end of file diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index f382ebda..90ff748c 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -1,4 +1,5 @@ from .MissionList import get_campaigns from .subquery import build_subqueries from .translate import translate_product, translate_opts, get_additional_fields -from .field_map import field_map \ No newline at end of file +from .field_map import field_map +from .UMMFields import umm_property_paths, umm_property_typecasting \ No newline at end of file diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py new file mode 100644 index 00000000..adf9091a --- /dev/null +++ b/asf_search/Products/ALOSProduct.py @@ -0,0 +1,53 @@ +import copy +from asf_search import ASFProduct, ASFSession, ASFSearchOptions +from asf_search.CMR import umm_property_paths +from asf_search.CMR.translate import get as umm_get, cast as umm_cast +from asf_search.exceptions import ASFBaselineError + +class ALOSProduct(ASFProduct): + base_properties = { + 'faradayRotation', + 'offNadirAngle', + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + self.baseline = self.get_baseline_calc_properties() + self.properties['frameNumber'] = umm_cast(int, umm_get(self.umm, *umm_property_paths.get('S1AlosFrameNumber'))) + + def get_baseline_calc_properties(self) -> dict: + insarBaseline = umm_cast(float, umm_get(self.umm, *umm_property_paths.get('insarBaseline'))) + + if insarBaseline is not None: + return { + 'insarBaseline': insarBaseline + } + + return None + + def get_stack_opts(self, reference: ASFProduct, + opts: ASFSearchOptions = None): + + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + stack_opts.processingLevel = self.get_default_product_type(reference) + + if reference.properties['insarStackId'] not in [None, 'NA', 0, '0']: + stack_opts.insarStackId = reference.properties['insarStackId'] + return stack_opts + + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {reference.properties["fileID"]}') + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **ALOSProduct.additional_properties + } + + @staticmethod + def is_valid_product(item: dict): + return ALOSProduct.get_platform(item).lower() == 'alos' + + + def get_default_product_type(self): + return 'L1.1' \ No newline at end of file diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py new file mode 100644 index 00000000..94663828 --- /dev/null +++ b/asf_search/Products/RadarsatProduct.py @@ -0,0 +1,47 @@ +from asf_search import ASFProduct, ASFSession +from asf_search.CMR import umm_property_paths +from asf_search.CMR.translate import get as umm_get, cast as umm_cast +# offnadir +# faradayRotation +# 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), +# 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), + +class RadarsatProduct(ASFProduct): + base_properties = { + 'faradayRotation', + 'offNadirAngle', + 'insarStackId', + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + self.baseline = self.get_baseline_calc_properties() + + def get_baseline_calc_properties(self) -> dict: + insarBaseline = umm_cast(float, umm_get(self.umm, *umm_property_paths.get('insarBaseline'))) + + if insarBaseline is not None: + return { + 'insarBaseline': insarBaseline + } + + return None + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct()._get_property_paths(), + **{ + prop: umm_path + for prop in RadarsatProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + return RadarsatProduct.get_platform(item).lower() == 'radarsat-1' + + def get_default_product_type(self): + # if get_platform(scene_name) in ['R1', 'E1', 'E2', 'J1']: + return 'L0' \ No newline at end of file diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py new file mode 100644 index 00000000..41d2f9c5 --- /dev/null +++ b/asf_search/Products/S1BURSTProduct.py @@ -0,0 +1,56 @@ +from asf_search import ASFSession +from asf_search.CMR import umm_property_paths +from asf_search.Products import S1Product +from asf_search.CMR.translate import get + +class S1BURSTProduct(S1Product): + base_properties = { + 'absoluteBurstID', + 'relativeBurstID', + 'fullBurstID', + 'burstIndex', + 'samplesPerBurst', + 'subswath', + 'azimuthTime', + 'azimuthAnxTime', + 'bytes', + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + self.properties['sceneName'] = self.properties['fileID'] + + self.properties['burst'] = { + 'absoluteBurstID': self.properties.pop('absoluteBurstID'), + 'relativeBurstID': self.properties.pop('relativeBurstID'), + 'fullBurstID': self.properties.pop('fullBurstID'), + 'burstIndex': self.properties.pop('burstIndex'), + 'samplesPerBurst': self.properties.pop('samplesPerBurst'), + 'subswath': self.properties.pop('subswath'), + 'azimuthTime': self.properties.pop('azimuthTime'), + 'azimuthAnxTime': self.properties.pop('azimuthAnxTime') + } + + urls = get(self.umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) + if urls is not None: + self.properties['url'] = urls[0] + self.properties['fileName'] = self.properties['fileID'] + '.' + urls[0].split('.')[-1] + self.properties['additionalUrls'] = [urls[1]] + + @staticmethod + def _get_property_paths() -> dict: + return { + **S1Product._get_property_paths(), + **{ + prop: umm_path + for prop in S1BURSTProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + def get_default_product_type(self): + return 'BURST' + + @staticmethod + def is_valid_product(item: dict): + return S1BURSTProduct.get_product_type(item) == 'BURST' and S1Product.is_valid_product(item) \ No newline at end of file diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py new file mode 100644 index 00000000..6830b196 --- /dev/null +++ b/asf_search/Products/S1Product.py @@ -0,0 +1,93 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class S1Product(ASFProduct): + additional_properties = { + 'frameNumber' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + baseline = self.get_baseline_calc_properties() + if None not in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: + self.baseline = baseline + + self.properties['frameNumber'] = umm_cast(int, umm_get(self.umm, *umm_property_paths.get('S1AlosFrameNumber'))) + + + def get_baseline_calc_properties(self) -> dict: + ascendingNodeTime = umm_get(self.umm, *umm_property_paths['ascendingNodeTime']) + + return { + 'stateVectors': self.get_state_vectors(), + 'ascendingNodeTime': ascendingNodeTime + } + + def get_state_vectors(self) -> dict: + positions = {} + velocities = {} + positions['prePosition'], positions['prePositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_position_pre'])) + positions['postPosition'], positions['postPositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_position_post'])) + velocities['preVelocity'], velocities['preVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_velocity_pre'])) + velocities['postVelocity'], velocities['postVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_velocity_post'])) + + return { + 'positions': positions, + 'velocities': velocities + } + + def get_stack_opts(reference: ASFProduct, + opts: ASFSearchOptions = None): + + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + + if reference.properties['processingLevel'] == 'BURST': + stack_opts.processingLevel = 'BURST' + else: + stack_opts.processingLevel = 'SLC' + + if reference.properties['processingLevel'] == 'BURST': + stack_opts.fullBurstID = reference.properties['burst']['fullBurstID'] + stack_opts.polarization = [reference.properties['polarization']] + return stack_opts + + stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] + + stack_opts.beamMode = [reference.properties['beamModeType']] + stack_opts.flightDirection = reference.properties['flightDirection'] + stack_opts.relativeOrbit = [int(reference.properties['pathNumber'])] # path + + if reference.properties['polarization'] in ['HH', 'HH+HV']: + stack_opts.polarization = ['HH','HH+HV'] + elif reference.properties['polarization'] in ['VV', 'VV+VH']: + stack_opts.polarization = ['VV','VV+VH'] + else: + stack_opts.polarization = [reference.properties['polarization']] + + stack_opts.intersectsWith = reference.centroid().wkt + return stack_opts + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in S1Product.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + def get_default_product_type(self): + return 'SLC' + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['sentinel-1', 'sentinel-1a', 'sentinel-1b'] \ No newline at end of file diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py new file mode 100644 index 00000000..41ea1466 --- /dev/null +++ b/asf_search/Products/__init__.py @@ -0,0 +1,4 @@ +from .S1Product import S1Product +from .S1BURSTProduct import S1BURSTProduct +from .ALOSProduct import ALOSProduct +from .RadarsatProduct import RadarsatProduct diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 026137db..68988780 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -33,7 +33,7 @@ def stack_from_product( opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts = get_stack_opts(reference, opts=opts) + stack_opts = reference.get_stack_opts(reference, opts=opts) stack = search(opts=stack_opts) is_complete = stack.searchComplete @@ -108,7 +108,6 @@ def get_stack_opts( stack_opts.polarization = [reference.properties['polarization']] stack_opts.intersectsWith = reference.centroid().wkt - return stack_opts raise ASFBaselineError(f'Reference product is not a pre-calculated baseline dataset, and not a known ephemeris-based dataset: {reference.properties["fileID"]}') diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 8763ea7e..c65bf96e 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -13,13 +13,14 @@ from asf_search.ASFSearchResults import ASFSearchResults from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.CMR import build_subqueries, translate_opts +from asf_search.CMR.translate import get as umm_get from asf_search.ASFSession import ASFSession from asf_search.ASFProduct import ASFProduct from asf_search.exceptions import ASFSearch4xxError, ASFSearch5xxError, ASFSearchError, CMRIncompleteError from asf_search.constants import INTERNAL from asf_search.WKT.validate_wkt import validate_wkt from asf_search.search.error_reporting import report_search_error - +import asf_search.Products as ASFProductType def search_generator( absoluteOrbit: Union[int, Tuple[int, int], Iterable[Union[int, Tuple[int, int]]]] = None, asfFrame: Union[int, Tuple[int, int], Iterable[Union[int, Tuple[int, int]]]] = None, @@ -120,7 +121,7 @@ def search_generator( def query_cmr(session: ASFSession, url: str, translated_opts: dict, sub_query_count: int): response = get_page(session=session, url=url, translated_opts=translated_opts) - items = [ASFProduct(f, session=session) for f in response.json()['items']] + items = [as_ASFProduct(f, session=session) for f in response.json()['items']] hits: int = response.json()['hits'] # total count of products given search opts # sometimes CMR returns results with the wrong page size @@ -228,3 +229,11 @@ def set_platform_alias(opts: ASFSearchOptions): platform_list.append(plat) opts.platform = list(set(platform_list)) + +def as_ASFProduct(item: dict, session: ASFSession, subclasses: List[ASFProduct] = []) -> ASFProduct: + built_ins = [ASFProductType.ALOSProduct, ASFProductType.RadarsatProduct, ASFProductType.S1BURSTProduct, ASFProductType.S1Product] + for subclass in built_ins: + if subclass.is_valid_product(item): + return subclass(item) + + return ASFProduct(item, session=session) From a69c6a2552864002ad8e9890503c0288a1d5e223 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 19 Sep 2023 11:48:07 -0800 Subject: [PATCH 02/95] adds several dataset ASFProduct classes (based on existing platform constants) --- asf_search/ASFProduct.py | 12 +++-- asf_search/CMR/UMMFields.py | 5 +- asf_search/Products/AIRSARProduct.py | 40 +++++++++++++++ asf_search/Products/ALOSProduct.py | 13 ++++- asf_search/Products/ERSProduct.py | 41 ++++++++++++++++ asf_search/Products/JERSProduct.py | 41 ++++++++++++++++ asf_search/Products/RadarsatProduct.py | 10 ++++ asf_search/Products/S1Product.py | 68 ++++++++++++++++---------- asf_search/Products/SEASATProduct.py | 40 +++++++++++++++ asf_search/Products/SIRCProduct.py | 42 ++++++++++++++++ asf_search/Products/SMAPProduct.py | 40 +++++++++++++++ asf_search/Products/UAVSARProduct.py | 41 ++++++++++++++++ asf_search/Products/__init__.py | 8 +++ asf_search/search/baseline_search.py | 4 +- asf_search/search/search_generator.py | 4 +- 15 files changed, 375 insertions(+), 34 deletions(-) create mode 100644 asf_search/Products/AIRSARProduct.py create mode 100644 asf_search/Products/ERSProduct.py create mode 100644 asf_search/Products/JERSProduct.py create mode 100644 asf_search/Products/SEASATProduct.py create mode 100644 asf_search/Products/SIRCProduct.py create mode 100644 asf_search/Products/SMAPProduct.py create mode 100644 asf_search/Products/UAVSARProduct.py diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index a1f2b1c2..cf76f9be 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -26,12 +26,18 @@ class ASFProduct: # min viable product 'centerLat', 'centerLon', + 'stopTime', # primary search results sort key 'fileID', # secondary search results sort key 'flightDirection', 'pathNumber', - 'stopTime', # primary search results sort key 'processingLevel', - 'url' + + # commonly used + 'url', + 'startTime', + 'sceneName', + 'browse', + 'platform' } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -124,7 +130,7 @@ def stack( return stack_from_product(self, opts=opts) - def get_stack_opts(self, opts: ASFSearchOptions=None) -> ASFSearchOptions: + def get_stack_opts(self) -> ASFSearchOptions: """ Build search options that can be used to find an insar stack for this product diff --git a/asf_search/CMR/UMMFields.py b/asf_search/CMR/UMMFields.py index 3850c163..9d010145 100644 --- a/asf_search/CMR/UMMFields.py +++ b/asf_search/CMR/UMMFields.py @@ -62,8 +62,11 @@ 'beamMode': ['AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0] # fallback to 'beamModeType' } +def float_string_as_int(val): + int(float(val)) + umm_property_typecasting = { - 'bytes': int, + 'bytes': float_string_as_int, # casting the string literal of a floating point number raises a TypeError, parse as float first 'centerLat': float, 'centerLon': float, 'faradayRotation': float, diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py new file mode 100644 index 00000000..87628fe4 --- /dev/null +++ b/asf_search/Products/AIRSARProduct.py @@ -0,0 +1,40 @@ +import copy +from asf_search import ASFProduct, ASFSession, ASFSearchOptions +from asf_search.CMR import umm_property_paths +from asf_search.CMR.translate import get as umm_get, cast as umm_cast +from asf_search.exceptions import ASFBaselineError + +class AIRSARProduct(ASFProduct): + base_properties = { + 'bytes', + 'frameNumber', + 'granuleType', + 'groupID', + 'insarStackId', + 'md5sum', + 'offNadirAngle', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in AIRSARProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + + @staticmethod + def is_valid_product(item: dict): + return AIRSARProduct.get_platform(item).lower() == 'airsar' + diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index adf9091a..3b5994c6 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -8,6 +8,13 @@ class ALOSProduct(ASFProduct): base_properties = { 'faradayRotation', 'offNadirAngle', + 'browse', + 'bytes', + 'granuleType', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -41,7 +48,11 @@ def get_stack_opts(self, reference: ASFProduct, def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **ALOSProduct.additional_properties + **{ + prop: umm_path + for prop in ALOSProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, } @staticmethod diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py new file mode 100644 index 00000000..c9f5f99a --- /dev/null +++ b/asf_search/Products/ERSProduct.py @@ -0,0 +1,41 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class ERSProduct(ASFProduct): + base_properties = { + 'browse', + 'bytes', + 'frameNumber', + 'granuleType', + 'insarStackId', + 'md5sum', + 'offNadirAngle', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in ERSProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['ers-1', 'ers-2', 'ers-3'] \ No newline at end of file diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py new file mode 100644 index 00000000..ec5856ee --- /dev/null +++ b/asf_search/Products/JERSProduct.py @@ -0,0 +1,41 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class JERSProduct(ASFProduct): + base_properties = { + 'browse', + 'bytes', + 'frameNumber', + 'granuleType', + 'insarStackId', + 'md5sum', + 'offNadirAngle', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in JERSProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['jers-1'] \ No newline at end of file diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 94663828..eb0abb3b 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -8,9 +8,19 @@ class RadarsatProduct(ASFProduct): base_properties = { + 'browse' 'faradayRotation', 'offNadirAngle', 'insarStackId', + 'processingDate', + 'sceneName', + 'orbit', + 'polarization', + 'md5sum', + 'sensor', + 'bytes', + 'granuleType', + 'frameNumber' } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 6830b196..dc7f2996 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -6,8 +6,17 @@ from asf_search.constants import PLATFORM class S1Product(ASFProduct): - additional_properties = { - 'frameNumber' + base_properties = { + 'frameNumber', + 'polarization', + 'bytes', + 'granuleType', + 'groupID', + 'md5sum', + 'orbit', + 'pgeVersion', + 'processingDate', + 'sensor' } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -41,36 +50,43 @@ def get_state_vectors(self) -> dict: 'velocities': velocities } - def get_stack_opts(reference: ASFProduct, - opts: ASFSearchOptions = None): + def get_stack_opts(self): - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - - if reference.properties['processingLevel'] == 'BURST': - stack_opts.processingLevel = 'BURST' - else: - stack_opts.processingLevel = 'SLC' + # stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + return { + 'processingLevel': 'SLC', + 'beamMode': [self.properties['beamModeType']], + 'flightDirection': self.properties['flightDirection'], + 'relativeOrbit': [int(self.properties['pathNumber'])], # path + 'platform': [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B], + 'polarization': ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'], + 'intersectsWith': self.centroid().wkt + } + # if reference.properties['processingLevel'] == 'BURST': + # stack_opts.processingLevel = 'BURST' + # else: + # stack_opts.processingLevel = 'SLC' - if reference.properties['processingLevel'] == 'BURST': - stack_opts.fullBurstID = reference.properties['burst']['fullBurstID'] - stack_opts.polarization = [reference.properties['polarization']] - return stack_opts + # if reference.properties['processingLevel'] == 'BURST': + # stack_opts.fullBurstID = reference.properties['burst']['fullBurstID'] + # stack_opts.polarization = [reference.properties['polarization']] + # return stack_opts - stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] + # stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] - stack_opts.beamMode = [reference.properties['beamModeType']] - stack_opts.flightDirection = reference.properties['flightDirection'] - stack_opts.relativeOrbit = [int(reference.properties['pathNumber'])] # path + # stack_opts.beamMode = [reference.properties['beamModeType']] + # stack_opts.flightDirection = reference.properties['flightDirection'] + # stack_opts.relativeOrbit = [int(reference.properties['pathNumber'])] # path - if reference.properties['polarization'] in ['HH', 'HH+HV']: - stack_opts.polarization = ['HH','HH+HV'] - elif reference.properties['polarization'] in ['VV', 'VV+VH']: - stack_opts.polarization = ['VV','VV+VH'] - else: - stack_opts.polarization = [reference.properties['polarization']] + # if reference.properties['polarization'] in ['HH', 'HH+HV']: + # stack_opts.polarization = ['HH','HH+HV'] + # elif reference.properties['polarization'] in ['VV', 'VV+VH']: + # stack_opts.polarization = ['VV','VV+VH'] + # else: + # stack_opts.polarization = [reference.properties['polarization']] - stack_opts.intersectsWith = reference.centroid().wkt - return stack_opts + # stack_opts.intersectsWith = reference.centroid().wkt + # return stack_opts @staticmethod def _get_property_paths() -> dict: diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py new file mode 100644 index 00000000..5ba413b0 --- /dev/null +++ b/asf_search/Products/SEASATProduct.py @@ -0,0 +1,40 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class SEASATProduct(ASFProduct): + base_properties = { + 'bytes', + 'frameNumber', + 'granuleType', + 'insarStackId', + 'md5sum', + 'offNadirAngle', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in SEASATProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['seasat 1'] \ No newline at end of file diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py new file mode 100644 index 00000000..2b50c6e4 --- /dev/null +++ b/asf_search/Products/SIRCProduct.py @@ -0,0 +1,42 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class SIRCProduct(ASFProduct): + base_properties = { + 'frameNumber', + 'polarization', + 'bytes', + 'granuleType', + 'groupID', + 'md5sum', + 'orbit', + 'pgeVersion', + 'processingDate', + 'sensor', + 'beamModeType', + 'frameNumber', + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in SIRCProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['sts-59', 'sts-68'] \ No newline at end of file diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py new file mode 100644 index 00000000..25171b7b --- /dev/null +++ b/asf_search/Products/SMAPProduct.py @@ -0,0 +1,40 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class SMAPProduct(ASFProduct): + base_properties = { + 'frameNumber', + 'granuleType', + 'groupID', + 'insarStackId', + 'md5sum', + 'offNadirAngle', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in SMAPProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['smap'] \ No newline at end of file diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py new file mode 100644 index 00000000..69b68636 --- /dev/null +++ b/asf_search/Products/UAVSARProduct.py @@ -0,0 +1,41 @@ +import copy +from asf_search import ASFSession, ASFSearchOptions +from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.constants import PLATFORM + +class UAVSARProduct(ASFProduct): + base_properties = { + 'bytes', + 'frameNumber', + 'granuleType', + 'groupID', + 'insarStackId', + 'md5sum', + 'offNadirAngle', + 'orbit', + 'polarization', + 'processingDate', + 'sensor' + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + @staticmethod + def _get_property_paths() -> dict: + return { + **ASFProduct._get_property_paths(), + **{ + prop: umm_path + for prop in UAVSARProduct.base_properties + if (umm_path := umm_property_paths.get(prop)) is not None + }, + } + + @staticmethod + def is_valid_product(item: dict): + platform: str = ASFProduct.get_platform(item).lower() + + return platform in ['uavsar'] \ No newline at end of file diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index 41ea1466..466f20aa 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -2,3 +2,11 @@ from .S1BURSTProduct import S1BURSTProduct from .ALOSProduct import ALOSProduct from .RadarsatProduct import RadarsatProduct + +from .AIRSARProduct import AIRSARProduct +from .ERSProduct import ERSProduct +from .JERSProduct import JERSProduct +from .UAVSARProduct import UAVSARProduct +from .SIRCProduct import SIRCProduct +from .SEASATProduct import SEASATProduct +from .SMAPProduct import SMAPProduct \ No newline at end of file diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 68988780..f0b3df89 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -33,9 +33,9 @@ def stack_from_product( opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts = reference.get_stack_opts(reference, opts=opts) + opts.merge_args(**reference.get_stack_opts()) - stack = search(opts=stack_opts) + stack = search(opts=opts) is_complete = stack.searchComplete stack, warnings = get_baseline_from_stack(reference=reference, stack=stack) diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index c65bf96e..6a7dd718 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -231,7 +231,9 @@ def set_platform_alias(opts: ASFSearchOptions): opts.platform = list(set(platform_list)) def as_ASFProduct(item: dict, session: ASFSession, subclasses: List[ASFProduct] = []) -> ASFProduct: - built_ins = [ASFProductType.ALOSProduct, ASFProductType.RadarsatProduct, ASFProductType.S1BURSTProduct, ASFProductType.S1Product] + built_ins = [ASFProductType.RadarsatProduct, ASFProductType.AIRSARProduct, ASFProductType.ERSProduct, ASFProductType.JERSProduct, + ASFProductType.UAVSARProduct, ASFProductType.SIRCProduct, ASFProductType.SEASATProduct, ASFProductType.SMAPProduct, + ASFProductType.ALOSProduct, ASFProductType.RadarsatProduct, ASFProductType.S1BURSTProduct, ASFProductType.S1Product] for subclass in built_ins: if subclass.is_valid_product(item): return subclass(item) From 824ef4f0c256f483e689bcd9c9fd7e07a4a01a75 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 8 Nov 2023 16:56:41 -0900 Subject: [PATCH 03/95] moves import around again, asf-search now imports again --- asf_search/CMR/__init__.py | 2 +- asf_search/CMR/datasets.py | 20 -------------------- asf_search/Products/AIRSARProduct.py | 2 +- asf_search/Products/ALOSProduct.py | 2 +- asf_search/Products/ERSProduct.py | 3 +-- asf_search/Products/JERSProduct.py | 3 +-- asf_search/Products/RadarsatProduct.py | 2 +- asf_search/Products/S1Product.py | 3 +-- asf_search/Products/SEASATProduct.py | 3 +-- asf_search/Products/SIRCProduct.py | 3 +-- asf_search/Products/SMAPProduct.py | 3 +-- asf_search/Products/UAVSARProduct.py | 3 +-- asf_search/__init__.py | 1 + asf_search/export/jsonlite.py | 4 ++-- asf_search/search/baseline_search.py | 2 +- asf_search/search/search_generator.py | 21 ++++++++++++++++++++- 16 files changed, 35 insertions(+), 42 deletions(-) diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index 28c5b372..c54918e5 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -3,4 +3,4 @@ from .translate import translate_product, translate_opts, get_additional_fields from .field_map import field_map from .UMMFields import umm_property_paths, umm_property_typecasting -from .datasets import dataset_collections, datset_product_types +from .datasets import dataset_collections diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index 0a7df035..b24e2e6f 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -1,5 +1,3 @@ -from asf_search import ASFProduct -import asf_search.Products as ASFProductType dataset_collections = { "SENTINEL-1": { @@ -328,21 +326,3 @@ "SEASAT_SAR_L1_HDF5": ["C1206500991-ASF", "C1206144699-ASF"], }, } - - -datset_product_types = { - 'SENTINEL-1': ASFProductType.S1Product, - 'OPERA-S1': ASFProduct, - 'SLC-BURST': ASFProductType.S1BURSTProduct, - 'ALOS PALSAR': ASFProductType.ALOSProduct, - 'ALOS AVNIR-2': ASFProductType.ALOSProduct, - 'SIR-C': ASFProductType.SIRCProduct, - 'ARIA S1 GUNW': ASFProduct, - 'SMAP': ASFProductType.SMAPProduct, - 'UAVSAR': ASFProductType.UAVSARProduct, - 'RADARSAT-1': ASFProductType.RadarsatProduct, - 'ERS': ASFProductType.ERSProduct, - 'JERS-1': ASFProductType.JERSProduct, - 'AIRSAR': ASFProductType.AIRSARProduct, - 'SEASAT': ASFProductType.SEASATProduct - } \ No newline at end of file diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index 87628fe4..aec5c04c 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -1,5 +1,5 @@ import copy -from asf_search import ASFProduct, ASFSession, ASFSearchOptions +from asf_search import ASFSession, ASFProduct from asf_search.CMR import umm_property_paths from asf_search.CMR.translate import get as umm_get, cast as umm_cast from asf_search.exceptions import ASFBaselineError diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 3b5994c6..7a945513 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,5 +1,5 @@ import copy -from asf_search import ASFProduct, ASFSession, ASFSearchOptions +from asf_search import ASFSession, ASFProduct, ASFSearchOptions from asf_search.CMR import umm_property_paths from asf_search.CMR.translate import get as umm_get, cast as umm_cast from asf_search.exceptions import ASFBaselineError diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index c9f5f99a..bb2774a6 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index ec5856ee..c57f1a86 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index eb0abb3b..4aad9932 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,4 +1,4 @@ -from asf_search import ASFProduct, ASFSession +from asf_search import ASFSession, ASFProduct from asf_search.CMR import umm_property_paths from asf_search.CMR.translate import get as umm_get, cast as umm_cast # offnadir diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index dc7f2996..618785d7 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index 5ba413b0..8982f443 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index 2b50c6e4..1fab843f 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index 25171b7b..38f481d9 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index 69b68636..9c84a0b5 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -1,6 +1,5 @@ import copy -from asf_search import ASFSession, ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM diff --git a/asf_search/__init__.py b/asf_search/__init__.py index d6fab9d7..c9dc5e0b 100644 --- a/asf_search/__init__.py +++ b/asf_search/__init__.py @@ -23,6 +23,7 @@ from .ASFProduct import ASFProduct from .ASFSearchResults import ASFSearchResults from .ASFSearchOptions import ASFSearchOptions, validators +from .Products import * from .exceptions import * from .constants import * from .health import * diff --git a/asf_search/export/jsonlite.py b/asf_search/export/jsonlite.py index dd697dab..3f16540f 100644 --- a/asf_search/export/jsonlite.py +++ b/asf_search/export/jsonlite.py @@ -6,7 +6,7 @@ from shapely.ops import transform from asf_search.CMR.translate import get_additional_fields -from asf_search import ASF_LOGGER, ASFProduct +from asf_search import ASF_LOGGER from asf_search.export.export_translators import ASFSearchResults_to_properties_list extra_jsonlite_fields = [ @@ -60,7 +60,7 @@ def __iter__(self): def __len__(self): return self.len - def get_additional_output_fields(self, product: ASFProduct): + def get_additional_output_fields(self, product): umm = product.umm additional_fields = {} diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index f0b3df89..fda69709 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -4,7 +4,7 @@ from asf_search.search import search, product_search from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.ASFSearchResults import ASFSearchResults -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFProduct from asf_search.constants import PLATFORM from asf_search.exceptions import ASFSearchError, ASFBaselineError from copy import copy diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 81e42b58..9547992f 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -14,7 +14,7 @@ from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.CMR import build_subqueries, translate_opts from asf_search.CMR.translate import get as umm_get -from asf_search.CMR.datasets import dataset_collections, datset_product_types +from asf_search.CMR.datasets import dataset_collections from asf_search.ASFSession import ASFSession from asf_search.ASFProduct import ASFProduct @@ -241,3 +241,22 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: return datset_product_types.get(dataset)(item, session=session) return ASFProduct(item, session=session) + + + +datset_product_types = { + 'SENTINEL-1': ASFProductType.S1Product, + 'OPERA-S1': ASFProduct, + 'SLC-BURST': ASFProductType.S1BURSTProduct, + 'ALOS PALSAR': ASFProductType.ALOSProduct, + 'ALOS AVNIR-2': ASFProductType.ALOSProduct, + 'SIR-C': ASFProductType.SIRCProduct, + 'ARIA S1 GUNW': ASFProduct, + 'SMAP': ASFProductType.SMAPProduct, + 'UAVSAR': ASFProductType.UAVSARProduct, + 'RADARSAT-1': ASFProductType.RadarsatProduct, + 'ERS': ASFProductType.ERSProduct, + 'JERS-1': ASFProductType.JERSProduct, + 'AIRSAR': ASFProductType.AIRSARProduct, + 'SEASAT': ASFProductType.SEASATProduct + } \ No newline at end of file From 90e158e63f6f0a8c364411b01655e531484c04fe Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 8 Nov 2023 17:02:12 -0900 Subject: [PATCH 04/95] products now built from corresponding dataset product type --- asf_search/search/search_generator.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 9547992f..623fe99a 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -235,9 +235,8 @@ def set_platform_alias(opts: ASFSearchOptions): def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: shortName = umm_get(item['umm'], 'CollectionReference', 'ShortName') - - for dataset in dataset_collections: - if shortName in dataset: + for dataset, collections in dataset_collections.items(): + if shortName in collections.keys(): return datset_product_types.get(dataset)(item, session=session) return ASFProduct(item, session=session) From 40b60b70593121c1582580037a99ae15bc6761fe Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 9 Nov 2023 17:10:23 -0900 Subject: [PATCH 05/95] removes dependency on global umm path dict, adds OPERAS1Product subclass --- asf_search/ASFProduct.py | 71 ++++++++------------------ asf_search/Products/AIRSARProduct.py | 34 ++++-------- asf_search/Products/ALOSProduct.py | 35 +++++-------- asf_search/Products/ERSProduct.py | 36 +++++-------- asf_search/Products/JERSProduct.py | 35 +++++-------- asf_search/Products/OPERAS1Product.py | 60 ++++++++++++++++++++++ asf_search/Products/RadarsatProduct.py | 15 ++---- asf_search/Products/S1BURSTProduct.py | 32 ++++-------- asf_search/Products/S1Product.py | 49 +++++++----------- asf_search/Products/SEASATProduct.py | 34 +++++------- asf_search/Products/SIRCProduct.py | 36 +++++-------- asf_search/Products/SMAPProduct.py | 33 ++++-------- asf_search/Products/UAVSARProduct.py | 34 ++++-------- asf_search/Products/__init__.py | 1 + asf_search/search/search_generator.py | 2 +- 15 files changed, 212 insertions(+), 295 deletions(-) create mode 100644 asf_search/Products/OPERAS1Product.py diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index cf76f9be..5e7c7929 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -5,6 +5,7 @@ from asf_search import ASFSession, ASFSearchResults from asf_search.ASFSearchOptions import ASFSearchOptions +from asf_search.CMR.UMMFields import float_string_as_int from asf_search.download import download_url # from asf_search.CMR import translate_product from remotezip import RemoteZip @@ -13,7 +14,6 @@ from asf_search import ASF_LOGGER from asf_search.CMR.translate import cast, try_round_float, get_state_vector from asf_search.CMR.translate import get as umm_get -from asf_search.CMR import umm_property_paths, umm_property_typecasting # Myabe just these keys???? #start and stop time (maybe) # - fileID @@ -24,20 +24,21 @@ class ASFProduct: base_properties = { # min viable product - 'centerLat', - 'centerLon', - 'stopTime', # primary search results sort key - 'fileID', # secondary search results sort key - 'flightDirection', - 'pathNumber', - 'processingLevel', + 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': float}, + 'centerLon': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0], 'cast': float}, + 'stopTime': {'path': ['TemporalExtent', 'RangeDateTime', 'EndingDateTime']}, # primary search results sort key + 'fileID': {'path': ['GranuleUR']}, # secondary search results sort key + 'flightDirection': {'path': [ 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0]}, + 'pathNumber': {'path': ['AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0], 'cast': int}, + 'processingLevel': {'path': [ 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0]}, # commonly used - 'url', - 'startTime', - 'sceneName', - 'browse', - 'platform' + 'url': {'path': [ 'RelatedUrls', ('Type', 'GET DATA'), 'URL']}, + 'startTime': {'path': [ 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime']}, + 'sceneName': {'path': [ 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier']}, + 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, + 'platform': {'path': [ 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0]}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -174,12 +175,13 @@ def translate_product(self, item: dict) -> dict: umm = item.get('umm') properties = { - prop: umm_get(umm, *umm_key_value) for prop, umm_key_value in self._get_property_paths().items() + prop: umm_entry['cast'](umm_get(umm, *umm_entry['path'])) if umm_entry.get('cast') is not None else umm_get(umm, *umm_entry['path']) + for prop, umm_entry in self._get_property_paths().items() } - for key, cast_type in umm_property_typecasting.items(): - if properties.get(key) is not None: - properties[key] = cast(cast_type, properties.get(key)) + # for key, cast_type in umm_property_typecasting.items(): + # if properties.get(key) is not None: + # properties[key] = cast(cast_type, properties.get(key)) if properties.get('url') is not None: @@ -189,27 +191,17 @@ def translate_product(self, item: dict) -> dict: # Fallbacks if properties.get('beamModeType') is None: - properties['beamModeType'] = umm_get(umm, *umm_property_paths['beamMode']) + properties['beamModeType'] = umm_get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) if properties.get('platform') is None: - properties['platform'] = umm_get(umm, *umm_property_paths['platformShortName']) - - # asf_frame_platforms = ['Sentinel-1A', 'Sentinel-1B', 'ALOS', 'SENTINEL-1A', 'SENTINEL-1B'] - # if properties['platform'] in asf_frame_platforms: - # properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0)) - # else: - # properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0)) + properties['platform'] = umm_get(umm, 'Platforms', 0, 'ShortName') return {'geometry': geometry, 'properties': properties, 'type': 'Feature'} # ASFProduct subclasses define extra/override param key + UMM pathing here @staticmethod def _get_property_paths() -> dict: - return { - prop: umm_path - for prop in ASFProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - } + return ASFProduct.base_properties def get_baseline_calc_properties(self) -> dict: return {} @@ -226,22 +218,3 @@ def get_default_product_type(self): # return 'BURST' # return 'SLC' return None - - - # static helper methods for product type checking - @staticmethod - def get_platform(item: dict): - if (platform := umm_get(item.get('umm'), *umm_property_paths['platform'])) is not None: - return platform - - return umm_get(item.get('umm'), *umm_property_paths['platformShortName']) - - @staticmethod - def get_product_type(item: dict): - return umm_get(item.get('umm'), *umm_property_paths['processingLevel']) - - - @staticmethod - def is_valid_product(item: dict): - return False - \ No newline at end of file diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index aec5c04c..10a34353 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -1,22 +1,20 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR import umm_property_paths from asf_search.CMR.translate import get as umm_get, cast as umm_cast from asf_search.exceptions import ASFBaselineError class AIRSARProduct(ASFProduct): base_properties = { - 'bytes', - 'frameNumber', - 'granuleType', - 'groupID', - 'insarStackId', - 'md5sum', - 'offNadirAngle', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -26,15 +24,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in AIRSARProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **AIRSARProduct.base_properties } - - - @staticmethod - def is_valid_product(item: dict): - return AIRSARProduct.get_platform(item).lower() == 'airsar' - diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 7a945513..f19d8575 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,29 +1,29 @@ import copy from asf_search import ASFSession, ASFProduct, ASFSearchOptions -from asf_search.CMR import umm_property_paths +from asf_search.CMR.UMMFields import float_string_as_int from asf_search.CMR.translate import get as umm_get, cast as umm_cast from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): base_properties = { - 'faradayRotation', - 'offNadirAngle', - 'browse', - 'bytes', - 'granuleType', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': int}, + 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': float}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - self.properties['frameNumber'] = umm_cast(int, umm_get(self.umm, *umm_property_paths.get('S1AlosFrameNumber'))) def get_baseline_calc_properties(self) -> dict: - insarBaseline = umm_cast(float, umm_get(self.umm, *umm_property_paths.get('insarBaseline'))) + insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: return { @@ -48,17 +48,8 @@ def get_stack_opts(self, reference: ASFProduct, def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in ALOSProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **ALOSProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - return ALOSProduct.get_platform(item).lower() == 'alos' - def get_default_product_type(self): return 'L1.1' \ No newline at end of file diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index bb2774a6..9e219ea4 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,22 +1,22 @@ import copy from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.CMR.UMMFields import float_string_as_int from asf_search.constants import PLATFORM class ERSProduct(ASFProduct): base_properties = { - 'browse', - 'bytes', - 'frameNumber', - 'granuleType', - 'insarStackId', - 'md5sum', - 'offNadirAngle', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -26,15 +26,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in ERSProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **ERSProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['ers-1', 'ers-2', 'ers-3'] \ No newline at end of file diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index c57f1a86..040c56b1 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,22 +1,21 @@ import copy from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM class JERSProduct(ASFProduct): base_properties = { - 'browse', - 'bytes', - 'frameNumber', - 'granuleType', - 'insarStackId', - 'md5sum', - 'offNadirAngle', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -26,15 +25,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in JERSProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **JERSProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['jers-1'] \ No newline at end of file diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py new file mode 100644 index 00000000..aa5aecdf --- /dev/null +++ b/asf_search/Products/OPERAS1Product.py @@ -0,0 +1,60 @@ +import copy +from asf_search import ASFSession, ASFProduct +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.UMMFields import float_string_as_int +from asf_search.Products import S1Product +from asf_search.constants import PLATFORM + +class OPERAS1Product(S1Product): + base_properties = { + 'centerLat': {'path': []}, # Opera products lacks these fields + 'centerLon': {'path': []}, + 'frameNumber': {'path': []}, + 'operaBurstID': {'path': ['AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0]}, + 'bytes': {'path': ['DataGranule', 'ArchiveAndDistributionInformation']} + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + + baseline = self.get_baseline_calc_properties() + if None not in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: + self.baseline = baseline + + self.properties['beamMode'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) + accessUrls = [*umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] + self.properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') + and not url.startswith('s3://') + and not 's3credentials' in url + and not url.endswith('.png') + and url != self.properties['url']]) + self.properties['polarization'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') + + self.properties['operaBurstID'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) + self.properties['bytes'] = {entry['Name']: {'bytes': entry['SizeInBytes'], 'format': entry['Format']} for entry in self.properties['bytes']} + + self.properties.pop('centerLat') + self.properties.pop('centerLon') + self.properties.pop('frameNumber') + def get_stack_opts(self): + + # stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + return { + 'processingLevel': 'SLC', + 'beamMode': [self.properties['beamModeType']], + 'flightDirection': self.properties['flightDirection'], + 'relativeOrbit': [int(self.properties['pathNumber'])], # path + 'platform': [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B], + 'polarization': ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'], + 'intersectsWith': self.centroid().wkt + } + + @staticmethod + def _get_property_paths() -> dict: + return { + **S1Product._get_property_paths(), + **OPERAS1Product.base_properties + } + + def get_default_product_type(self): + return 'CSLC' diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 4aad9932..6c67b65f 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,5 +1,4 @@ from asf_search import ASFSession, ASFProduct -from asf_search.CMR import umm_property_paths from asf_search.CMR.translate import get as umm_get, cast as umm_cast # offnadir # faradayRotation @@ -28,7 +27,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = self.get_baseline_calc_properties() def get_baseline_calc_properties(self) -> dict: - insarBaseline = umm_cast(float, umm_get(self.umm, *umm_property_paths.get('insarBaseline'))) + insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: return { @@ -40,18 +39,10 @@ def get_baseline_calc_properties(self) -> dict: @staticmethod def _get_property_paths() -> dict: return { - **ASFProduct()._get_property_paths(), - **{ - prop: umm_path - for prop in RadarsatProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **ASFProduct._get_property_paths(), + **RadarsatProduct.base_properties } - @staticmethod - def is_valid_product(item: dict): - return RadarsatProduct.get_platform(item).lower() == 'radarsat-1' - def get_default_product_type(self): # if get_platform(scene_name) in ['R1', 'E1', 'E2', 'J1']: return 'L0' \ No newline at end of file diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 41d2f9c5..f29fc5fc 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -1,25 +1,23 @@ from asf_search import ASFSession -from asf_search.CMR import umm_property_paths from asf_search.Products import S1Product from asf_search.CMR.translate import get - +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast class S1BURSTProduct(S1Product): base_properties = { - 'absoluteBurstID', - 'relativeBurstID', - 'fullBurstID', - 'burstIndex', - 'samplesPerBurst', - 'subswath', - 'azimuthTime', - 'azimuthAnxTime', - 'bytes', + 'absoluteBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], 'cast': int}, + 'relativeBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], 'cast': int}, + 'fullBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0]}, + 'burstIndex': {'path': ['AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0], 'cast': int}, + 'samplesPerBurst': {'path': ['AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0], 'cast': int}, + 'subswath': {'path': ['AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0]}, + 'azimuthTime': {'path': ['AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0]}, + 'azimuthAnxTime': {'path': ['AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0]}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.properties['sceneName'] = self.properties['fileID'] - + self.properties['bytes'] = umm_get(self.umm, ['AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0]) self.properties['burst'] = { 'absoluteBurstID': self.properties.pop('absoluteBurstID'), 'relativeBurstID': self.properties.pop('relativeBurstID'), @@ -41,16 +39,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **S1Product._get_property_paths(), - **{ - prop: umm_path - for prop in S1BURSTProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **S1BURSTProduct.base_properties } def get_default_product_type(self): return 'BURST' - - @staticmethod - def is_valid_product(item: dict): - return S1BURSTProduct.get_product_type(item) == 'BURST' and S1Product.is_valid_product(item) \ No newline at end of file diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 618785d7..7f6254cd 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,35 +1,34 @@ import copy from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM class S1Product(ASFProduct): base_properties = { - 'frameNumber', - 'polarization', - 'bytes', - 'granuleType', - 'groupID', - 'md5sum', - 'orbit', - 'pgeVersion', - 'processingDate', - 'sensor' + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0], }, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0], }, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'], }, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) baseline = self.get_baseline_calc_properties() - if None not in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: - self.baseline = baseline - self.properties['frameNumber'] = umm_cast(int, umm_get(self.umm, *umm_property_paths.get('S1AlosFrameNumber'))) + if baseline is not None: + if None not in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: + self.baseline = baseline + def get_baseline_calc_properties(self) -> dict: - ascendingNodeTime = umm_get(self.umm, *umm_property_paths['ascendingNodeTime']) + ascendingNodeTime = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) return { 'stateVectors': self.get_state_vectors(), @@ -39,10 +38,10 @@ def get_baseline_calc_properties(self) -> dict: def get_state_vectors(self) -> dict: positions = {} velocities = {} - positions['prePosition'], positions['prePositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_position_pre'])) - positions['postPosition'], positions['postPositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_position_post'])) - velocities['preVelocity'], velocities['preVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_velocity_pre'])) - velocities['postVelocity'], velocities['postVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, *umm_property_paths['sv_velocity_post'])) + positions['prePosition'], positions['prePositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) + positions['postPosition'], positions['postPositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) + velocities['preVelocity'], velocities['preVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) + velocities['postVelocity'], velocities['postVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) return { 'positions': positions, @@ -91,18 +90,8 @@ def get_stack_opts(self): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in S1Product.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **S1Product.base_properties } def get_default_product_type(self): return 'SLC' - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['sentinel-1', 'sentinel-1a', 'sentinel-1b'] \ No newline at end of file diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index 8982f443..b5099587 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -1,21 +1,21 @@ import copy from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths +from asf_search.CMR.UMMFields import float_string_as_int from asf_search.constants import PLATFORM class SEASATProduct(ASFProduct): base_properties = { - 'bytes', - 'frameNumber', - 'granuleType', - 'insarStackId', - 'md5sum', - 'offNadirAngle', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -25,15 +25,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in SEASATProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **SEASATProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['seasat 1'] \ No newline at end of file diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index 1fab843f..f793bd6c 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -1,23 +1,21 @@ import copy from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM class SIRCProduct(ASFProduct): base_properties = { - 'frameNumber', - 'polarization', - 'bytes', - 'granuleType', - 'groupID', - 'md5sum', - 'orbit', - 'pgeVersion', - 'processingDate', - 'sensor', - 'beamModeType', - 'frameNumber', + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'] }, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']}, + 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -27,15 +25,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in SIRCProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **SIRCProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['sts-59', 'sts-68'] \ No newline at end of file diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index 38f481d9..86730d14 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -1,21 +1,20 @@ import copy from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM class SMAPProduct(ASFProduct): base_properties = { - 'frameNumber', - 'granuleType', - 'groupID', - 'insarStackId', - 'md5sum', - 'offNadirAngle', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -25,15 +24,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in SMAPProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **SMAPProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['smap'] \ No newline at end of file diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index 9c84a0b5..6bd8cd00 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -1,22 +1,20 @@ import copy from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import umm_property_paths from asf_search.constants import PLATFORM class UAVSARProduct(ASFProduct): base_properties = { - 'bytes', - 'frameNumber', - 'granuleType', - 'groupID', - 'insarStackId', - 'md5sum', - 'offNadirAngle', - 'orbit', - 'polarization', - 'processingDate', - 'sensor' + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -26,15 +24,5 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), - **{ - prop: umm_path - for prop in UAVSARProduct.base_properties - if (umm_path := umm_property_paths.get(prop)) is not None - }, + **UAVSARProduct.base_properties } - - @staticmethod - def is_valid_product(item: dict): - platform: str = ASFProduct.get_platform(item).lower() - - return platform in ['uavsar'] \ No newline at end of file diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index 466f20aa..19201bcf 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -1,5 +1,6 @@ from .S1Product import S1Product from .S1BURSTProduct import S1BURSTProduct +from .OPERAS1Product import OPERAS1Product from .ALOSProduct import ALOSProduct from .RadarsatProduct import RadarsatProduct diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 623fe99a..f1e75931 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -245,7 +245,7 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: datset_product_types = { 'SENTINEL-1': ASFProductType.S1Product, - 'OPERA-S1': ASFProduct, + 'OPERA-S1': ASFProductType.OPERAS1Product, 'SLC-BURST': ASFProductType.S1BURSTProduct, 'ALOS PALSAR': ASFProductType.ALOSProduct, 'ALOS AVNIR-2': ASFProductType.ALOSProduct, From d77f321eb9bc5f9cef969b3cdf60d90e37b71028 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 10 Nov 2023 15:40:55 -0900 Subject: [PATCH 06/95] all dataset results now map to dataset product type --- asf_search/ASFProduct.py | 11 ++++---- asf_search/CMR/datasets.py | 38 ++++++++++++++++++++++++++ asf_search/CMR/translate.py | 11 ++++++++ asf_search/Products/AIRSARProduct.py | 8 +++--- asf_search/Products/ALOSProduct.py | 13 ++++----- asf_search/Products/ERSProduct.py | 11 ++++---- asf_search/Products/JERSProduct.py | 8 +++--- asf_search/Products/OPERAS1Product.py | 6 ++-- asf_search/Products/RadarsatProduct.py | 29 ++++++++------------ asf_search/Products/S1BURSTProduct.py | 10 +++---- asf_search/Products/S1Product.py | 6 ++-- asf_search/Products/SEASATProduct.py | 11 ++++---- asf_search/Products/SIRCProduct.py | 8 +++--- asf_search/Products/SMAPProduct.py | 8 +++--- asf_search/Products/UAVSARProduct.py | 8 +++--- asf_search/search/search_generator.py | 25 ++++++++++++++--- 16 files changed, 132 insertions(+), 79 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 5e7c7929..85cd131f 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -5,14 +5,13 @@ from asf_search import ASFSession, ASFSearchResults from asf_search.ASFSearchOptions import ASFSearchOptions -from asf_search.CMR.UMMFields import float_string_as_int from asf_search.download import download_url # from asf_search.CMR import translate_product from remotezip import RemoteZip from asf_search.download.file_download_type import FileDownloadType from asf_search import ASF_LOGGER -from asf_search.CMR.translate import cast, try_round_float, get_state_vector +from asf_search.CMR.translate import cast, try_parse_float, try_parse_int, try_round_float, get_state_vector from asf_search.CMR.translate import get as umm_get # Myabe just these keys???? #start and stop time (maybe) @@ -24,12 +23,12 @@ class ASFProduct: base_properties = { # min viable product - 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': float}, - 'centerLon': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0], 'cast': float}, + 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': try_parse_float}, + 'centerLon': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0], 'cast': try_parse_float}, 'stopTime': {'path': ['TemporalExtent', 'RangeDateTime', 'EndingDateTime']}, # primary search results sort key 'fileID': {'path': ['GranuleUR']}, # secondary search results sort key 'flightDirection': {'path': [ 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0]}, - 'pathNumber': {'path': ['AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0], 'cast': int}, + 'pathNumber': {'path': ['AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'processingLevel': {'path': [ 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0]}, # commonly used @@ -38,7 +37,7 @@ class ASFProduct: 'sceneName': {'path': [ 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier']}, 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'platform': {'path': [ 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0]}, - 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index b24e2e6f..0e64b3b8 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -178,6 +178,14 @@ "ALOS_PSR_L1.1": ["C1206485527-ASF", "C1207710476-ASF", "C1239611505-ASFDEV"], "ALOS_PSR_L2.2": ["C2011599335-ASF", "C1239927797-ASF", "C1238733834-ASFDEV"], "ALOS_PALSAR_INSAR_METADATA": ["C1229740239-ASF"], + + # ALOS PALSAR UMM-G doesn't have shortName, need to use Entry Title version + "ALOS_PALSAR_RTC_HIGH": [], + "ALOS_PALSAR_LEVEL1.5": [], + "ALOS_PALSAR_RTC_LOW": [], + "ALOS_PALSAR_LEVEL1.0": [], + "ALOS_PALSAR_LEVEL1.1": [], + "ALOS_PALSAR_LEVEL2.2": [], }, "ALOS AVNIR-2": { "ALOS_AVNIR_OBS_ORI": [ @@ -216,6 +224,13 @@ "STS-68_META_GRD": ["C1661710600-ASF", "C1226557816-ASF", "C1234413273-ASFDEV"], "STS-68_META_SLC": ["C1661710603-ASF", "C1226557817-ASF", "C1234413274-ASFDEV"], "STS-68_SLC": ["C1661710604-ASF", "C1226557818-ASF", "C1234413275-ASFDEV"], + + + # Some SIR-C UMM-G don't have shortName, need to use Entry Title version + "STS-59_METADATA_GRD": [], + "STS-59_METADATA_SLC": [], + "STS-68_METADATA_GRD": [], + "STS-68_METADATA_SLC": [], }, "ARIA S1 GUNW": { "SENTINEL-1_INTERFEROGRAMS": ["C1595422627-ASF", "C1225776654-ASF"], @@ -229,6 +244,12 @@ "C1595765183-ASF", "C1225776659-ASF", ], + + "Sentinel-1 Interferograms (BETA)": [], + "Sentinel-1 Interferograms - Amplitude (BETA)": [], + "Sentinel-1 Interferograms - Coherence (BETA)": [], + "Sentinel-1 Interferograms - Connected Components (BETA)": [], + "Sentinel-1 Interferograms - Unwrapped Phase (BETA)": [], }, "SMAP": { "SPL1A_RO_METADATA_003": ["C1243122884-ASF", "C1233103964-ASF"], @@ -267,6 +288,10 @@ "SPL1A_003": ["C1216074922-ASF"], "SPL1A_METADATA_003": ["C1216074750-ASF"], "SPL1A_QA_003": ["C1216074751-ASF"], + + "SMAP_L1A_RADAR_RECEIVE_ONLY_QA_V003": [], + "SMAP_L1A_RADAR_RECEIVE_ONLY_V003": [], + "SMAP_L1A_RADAR_RECEIVE_ONLY_METADATA_V003": [], }, "UAVSAR": { "UAVSAR_POL_META": ["C1214353986-ASF", "C1210487703-ASF"], @@ -287,6 +312,19 @@ "UAVSAR_POL_PAULI": ["C1214354031-ASF", "C1207038647-ASF"], "UAVSAR_POL_SLOPE": ["C1214408428-ASF", "C1210599503-ASF"], "UAVSAR_POL_STOKES": ["C1214419355-ASF", "C1210599673-ASF"], + + "UAVSAR_POL_METADATA": [], + "UAVSAR_POL_METADATA": [], + "UAVSAR_POLSAR_DEM": [], + "UAVSAR_POLSAR_INC": [], + "UAVSAR_POLSAR_KMZ": [], + "UAVSAR_POLSAR_ML_COMPLEX_GRD": [], + "UAVSAR_POLSAR_ML_COMPLEX_GRD_3X3": [], + "UAVSAR_POLSAR_ML_COMPLEX_GRD_5X5": [], + "UAVSAR_POLSAR_ML_COMPLEX_SLANT": [], + "UAVSAR_POLSAR_PAULI": [], + "UAVSAR_POLSAR_SLOPE": [], + "UAVSAR_POLSAR_STOKES": [], }, "RADARSAT-1": { "RSAT-1_L0": ["C1206897141-ASF"], diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index e38fe193..fb15fa40 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -310,6 +310,17 @@ def try_round_float(value: str): return value +def try_parse_int(value: str): + if value is not None: + return int(value) + + return value + +def try_parse_float(value: str): + if value is not None: + return float(value) + + return value def fix_date(fixed_params: Dict[str, Any]): if 'start' in fixed_params or 'end' in fixed_params or 'season' in fixed_params: diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index 10a34353..528c53e1 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -1,17 +1,17 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int from asf_search.exceptions import ASFBaselineError class AIRSARProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index f19d8575..f4956def 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,18 +1,17 @@ import copy from asf_search import ASFSession, ASFProduct, ASFSearchOptions -from asf_search.CMR.UMMFields import float_string_as_int -from asf_search.CMR.translate import get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': int}, - 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': float}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, + 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, - 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 9e219ea4..5f97ebd2 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,19 +1,18 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import float_string_as_int +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float from asf_search.constants import PLATFORM class ERSProduct(ASFProduct): base_properties = { 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, - 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 040c56b1..54f00e63 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,18 +1,18 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int from asf_search.constants import PLATFORM class JERSProduct(ASFProduct): base_properties = { 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index aa5aecdf..966b6d46 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -1,7 +1,5 @@ -import copy -from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import float_string_as_int +from asf_search import ASFSession +from asf_search.CMR.translate import get as umm_get from asf_search.Products import S1Product from asf_search.constants import PLATFORM diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 6c67b65f..75aa3a99 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,25 +1,18 @@ from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast -# offnadir -# faradayRotation -# 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), -# 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), +from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int class RadarsatProduct(ASFProduct): base_properties = { - 'browse' - 'faradayRotation', - 'offNadirAngle', - 'insarStackId', - 'processingDate', - 'sceneName', - 'orbit', - 'polarization', - 'md5sum', - 'sensor', - 'bytes', - 'granuleType', - 'frameNumber' + 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index f29fc5fc..2c503a33 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -1,14 +1,14 @@ from asf_search import ASFSession from asf_search.Products import S1Product -from asf_search.CMR.translate import get +from asf_search.CMR.translate import get, try_parse_int from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast class S1BURSTProduct(S1Product): base_properties = { - 'absoluteBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], 'cast': int}, - 'relativeBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], 'cast': int}, + 'absoluteBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], 'cast': try_parse_int}, + 'relativeBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], 'cast': try_parse_int}, 'fullBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0]}, - 'burstIndex': {'path': ['AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0], 'cast': int}, - 'samplesPerBurst': {'path': ['AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0], 'cast': int}, + 'burstIndex': {'path': ['AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0], 'cast': try_parse_int}, + 'samplesPerBurst': {'path': ['AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0], 'cast': try_parse_int}, 'subswath': {'path': ['AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0]}, 'azimuthTime': {'path': ['AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0]}, 'azimuthAnxTime': {'path': ['AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0]}, diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 7f6254cd..f3caf158 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,16 +1,16 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int from asf_search.constants import PLATFORM class S1Product(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0], }, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0], }, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'], }, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index b5099587..0a0c56ee 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -1,18 +1,17 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast -from asf_search.CMR.UMMFields import float_string_as_int +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float from asf_search.constants import PLATFORM class SEASATProduct(ASFProduct): base_properties = { - 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': float_string_as_int}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index f793bd6c..6910f71b 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -1,21 +1,21 @@ import copy from asf_search import ASFProduct, ASFSession -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int from asf_search.constants import PLATFORM class SIRCProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'] }, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index 86730d14..2a9263e2 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -1,17 +1,17 @@ import copy from asf_search import ASFProduct, ASFSession -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int from asf_search.constants import PLATFORM class SMAPProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index 6bd8cd00..805fba17 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -1,17 +1,17 @@ import copy from asf_search import ASFProduct, ASFSession -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int from asf_search.constants import PLATFORM class UAVSARProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': int}, + 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index f1e75931..a5399b4e 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -235,10 +235,19 @@ def set_platform_alias(opts: ASFSearchOptions): def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: shortName = umm_get(item['umm'], 'CollectionReference', 'ShortName') + + # ALOS + if shortName is None: + shortName = umm_get(item['umm'], 'Platforms', 0, 'ShortName') + # shortName = umm_get(item['umm'], 'CollectionReference', 'EntryTitle') + print(shortName) + for dataset, collections in dataset_collections.items(): - if shortName in collections.keys(): + if shortName in collections.keys() or shortName == dataset: return datset_product_types.get(dataset)(item, session=session) + if shortName in datset_product_types.keys(): + return datset_product_types.get(shortName)(item, session=session) return ASFProduct(item, session=session) @@ -247,15 +256,23 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: 'SENTINEL-1': ASFProductType.S1Product, 'OPERA-S1': ASFProductType.OPERAS1Product, 'SLC-BURST': ASFProductType.S1BURSTProduct, - 'ALOS PALSAR': ASFProductType.ALOSProduct, - 'ALOS AVNIR-2': ASFProductType.ALOSProduct, + 'ALOS': ASFProductType.ALOSProduct, + # 'ALOS PALSAR': ASFProductType.ALOSProduct, + # 'ALOS AVNIR-2': ASFProductType.ALOSProduct, 'SIR-C': ASFProductType.SIRCProduct, 'ARIA S1 GUNW': ASFProduct, 'SMAP': ASFProductType.SMAPProduct, 'UAVSAR': ASFProductType.UAVSARProduct, 'RADARSAT-1': ASFProductType.RadarsatProduct, + 'ERS': ASFProductType.ERSProduct, + 'ERS-2': ASFProductType.ERSProduct, + 'JERS-1': ASFProductType.JERSProduct, + 'AIRSAR': ASFProductType.AIRSARProduct, - 'SEASAT': ASFProductType.SEASATProduct + 'DC-8': ASFProductType.AIRSARProduct, + + 'SEASAT': ASFProductType.SEASATProduct, + 'SEASAT 1': ASFProductType.SEASATProduct } \ No newline at end of file From 8f8926626897fb40178da6dd7481521b8f6ba460 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 10 Nov 2023 16:20:39 -0900 Subject: [PATCH 07/95] adds arias1gunwproduct type --- asf_search/CMR/datasets.py | 40 +----------------------- asf_search/Products/ARIAS1GUNWProduct.py | 29 +++++++++++++++++ asf_search/Products/__init__.py | 2 ++ asf_search/search/search_generator.py | 8 +++-- 4 files changed, 37 insertions(+), 42 deletions(-) create mode 100644 asf_search/Products/ARIAS1GUNWProduct.py diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index 0e64b3b8..0d4ba138 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -178,14 +178,6 @@ "ALOS_PSR_L1.1": ["C1206485527-ASF", "C1207710476-ASF", "C1239611505-ASFDEV"], "ALOS_PSR_L2.2": ["C2011599335-ASF", "C1239927797-ASF", "C1238733834-ASFDEV"], "ALOS_PALSAR_INSAR_METADATA": ["C1229740239-ASF"], - - # ALOS PALSAR UMM-G doesn't have shortName, need to use Entry Title version - "ALOS_PALSAR_RTC_HIGH": [], - "ALOS_PALSAR_LEVEL1.5": [], - "ALOS_PALSAR_RTC_LOW": [], - "ALOS_PALSAR_LEVEL1.0": [], - "ALOS_PALSAR_LEVEL1.1": [], - "ALOS_PALSAR_LEVEL2.2": [], }, "ALOS AVNIR-2": { "ALOS_AVNIR_OBS_ORI": [ @@ -224,13 +216,6 @@ "STS-68_META_GRD": ["C1661710600-ASF", "C1226557816-ASF", "C1234413273-ASFDEV"], "STS-68_META_SLC": ["C1661710603-ASF", "C1226557817-ASF", "C1234413274-ASFDEV"], "STS-68_SLC": ["C1661710604-ASF", "C1226557818-ASF", "C1234413275-ASFDEV"], - - - # Some SIR-C UMM-G don't have shortName, need to use Entry Title version - "STS-59_METADATA_GRD": [], - "STS-59_METADATA_SLC": [], - "STS-68_METADATA_GRD": [], - "STS-68_METADATA_SLC": [], }, "ARIA S1 GUNW": { "SENTINEL-1_INTERFEROGRAMS": ["C1595422627-ASF", "C1225776654-ASF"], @@ -243,13 +228,7 @@ "SENTINEL-1_INTERFEROGRAMS_UNWRAPPED_PHASE": [ "C1595765183-ASF", "C1225776659-ASF", - ], - - "Sentinel-1 Interferograms (BETA)": [], - "Sentinel-1 Interferograms - Amplitude (BETA)": [], - "Sentinel-1 Interferograms - Coherence (BETA)": [], - "Sentinel-1 Interferograms - Connected Components (BETA)": [], - "Sentinel-1 Interferograms - Unwrapped Phase (BETA)": [], + ] }, "SMAP": { "SPL1A_RO_METADATA_003": ["C1243122884-ASF", "C1233103964-ASF"], @@ -288,10 +267,6 @@ "SPL1A_003": ["C1216074922-ASF"], "SPL1A_METADATA_003": ["C1216074750-ASF"], "SPL1A_QA_003": ["C1216074751-ASF"], - - "SMAP_L1A_RADAR_RECEIVE_ONLY_QA_V003": [], - "SMAP_L1A_RADAR_RECEIVE_ONLY_V003": [], - "SMAP_L1A_RADAR_RECEIVE_ONLY_METADATA_V003": [], }, "UAVSAR": { "UAVSAR_POL_META": ["C1214353986-ASF", "C1210487703-ASF"], @@ -312,19 +287,6 @@ "UAVSAR_POL_PAULI": ["C1214354031-ASF", "C1207038647-ASF"], "UAVSAR_POL_SLOPE": ["C1214408428-ASF", "C1210599503-ASF"], "UAVSAR_POL_STOKES": ["C1214419355-ASF", "C1210599673-ASF"], - - "UAVSAR_POL_METADATA": [], - "UAVSAR_POL_METADATA": [], - "UAVSAR_POLSAR_DEM": [], - "UAVSAR_POLSAR_INC": [], - "UAVSAR_POLSAR_KMZ": [], - "UAVSAR_POLSAR_ML_COMPLEX_GRD": [], - "UAVSAR_POLSAR_ML_COMPLEX_GRD_3X3": [], - "UAVSAR_POLSAR_ML_COMPLEX_GRD_5X5": [], - "UAVSAR_POLSAR_ML_COMPLEX_SLANT": [], - "UAVSAR_POLSAR_PAULI": [], - "UAVSAR_POLSAR_SLOPE": [], - "UAVSAR_POLSAR_STOKES": [], }, "RADARSAT-1": { "RSAT-1_L0": ["C1206897141-ASF"], diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py new file mode 100644 index 00000000..47934ba0 --- /dev/null +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -0,0 +1,29 @@ +from asf_search import ASFSession +from asf_search.Products import S1Product +from asf_search.CMR.translate import get, try_parse_float, try_parse_int +from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +class ARIAS1GUNWProduct(S1Product): + base_properties = { + 'perpendicularBaseline': {'path': ['AdditionalAttributes', ('Name', 'PERPENDICULAR_BASELINE'), 'Values', 0], 'cast': try_parse_float}, + 'orbit': {'path': ['OrbitCalculatedSpatialDomains']} + } + + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + self.properties['orbit'] = [orbit['OrbitNumber'] for orbit in self.properties['orbit']] + + urls = get(self.umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) + if urls is not None: + self.properties['url'] = urls[0] + self.properties['fileName'] = self.properties['fileID'] + '.' + urls[0].split('.')[-1] + self.properties['additionalUrls'] = [urls[1]] + + @staticmethod + def _get_property_paths() -> dict: + return { + **S1Product._get_property_paths(), + **ARIAS1GUNWProduct.base_properties + } + + def get_default_product_type(self): + return 'BURST' diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index 19201bcf..d4e68375 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -1,6 +1,8 @@ from .S1Product import S1Product from .S1BURSTProduct import S1BURSTProduct from .OPERAS1Product import OPERAS1Product +from .ARIAS1GUNWProduct import ARIAS1GUNWProduct + from .ALOSProduct import ALOSProduct from .RadarsatProduct import RadarsatProduct diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index a5399b4e..61193844 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -239,8 +239,10 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: # ALOS if shortName is None: shortName = umm_get(item['umm'], 'Platforms', 0, 'ShortName') - # shortName = umm_get(item['umm'], 'CollectionReference', 'EntryTitle') - print(shortName) + if shortName == 'SENTINEL-1A': + if 'Sentinel-1 Interferogram' in umm_get(item['umm'], 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0): + shortName = 'ARIA S1 GUNW' + # print(shortName) for dataset, collections in dataset_collections.items(): if shortName in collections.keys() or shortName == dataset: @@ -260,7 +262,7 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: # 'ALOS PALSAR': ASFProductType.ALOSProduct, # 'ALOS AVNIR-2': ASFProductType.ALOSProduct, 'SIR-C': ASFProductType.SIRCProduct, - 'ARIA S1 GUNW': ASFProduct, + 'ARIA S1 GUNW': ASFProductType.ARIAS1GUNWProduct, 'SMAP': ASFProductType.SMAPProduct, 'UAVSAR': ASFProductType.UAVSARProduct, 'RADARSAT-1': ASFProductType.RadarsatProduct, From 2fdcfc254e367b89ae9a254d8cd4a4be8c1e91e4 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 15 Nov 2023 11:24:24 -0900 Subject: [PATCH 08/95] adds DATASET constants, limits constant imports to modules --- asf_search/__init__.py | 2 +- asf_search/constants/DATASET.py | 14 ++++++++++++++ asf_search/constants/__init__.py | 1 + asf_search/search/error_reporting.py | 5 +++-- 4 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 asf_search/constants/DATASET.py diff --git a/asf_search/__init__.py b/asf_search/__init__.py index d6fab9d7..e58a1acc 100644 --- a/asf_search/__init__.py +++ b/asf_search/__init__.py @@ -23,8 +23,8 @@ from .ASFProduct import ASFProduct from .ASFSearchResults import ASFSearchResults from .ASFSearchOptions import ASFSearchOptions, validators +from .constants import BEAMMODE, FLIGHT_DIRECTION, INSTRUMENT, PLATFORM, POLARIZATION, PRODUCT_TYPE, INTERNAL, DATASET from .exceptions import * -from .constants import * from .health import * from .search import * from .download import * diff --git a/asf_search/constants/DATASET.py b/asf_search/constants/DATASET.py new file mode 100644 index 00000000..2ccf52ea --- /dev/null +++ b/asf_search/constants/DATASET.py @@ -0,0 +1,14 @@ +SENTINEL1 = 'SENTINEL-1' +OPERA_S1 = 'OPERA-S1' +SLC_BURST = 'SLC-BURST' +ALOS_PALSAR = 'ALOS PALSAR' +ALOS_AVNIR_2 = 'ALOS AVNIR-2' +SIRC = 'SIR-C' +ARIA_S1_GUNW = 'ARIA S1 GUNW' +SMAP = 'SMAP' +UAVSAR = 'UAVSAR' +RADARSAT_1 = 'RADARSAT-1' +ERS = 'ERS' +JERS_1 = 'JERS-1' +AIRSAR = 'AIRSAR' +SEASAT = 'SEASAT' \ No newline at end of file diff --git a/asf_search/constants/__init__.py b/asf_search/constants/__init__.py index 5f06fe1d..3ab520e1 100644 --- a/asf_search/constants/__init__.py +++ b/asf_search/constants/__init__.py @@ -7,3 +7,4 @@ from .POLARIZATION import * from .PRODUCT_TYPE import * from .INTERNAL import * +from .DATASET import * \ No newline at end of file diff --git a/asf_search/search/error_reporting.py b/asf_search/search/error_reporting.py index e53db36f..dd1d3d10 100644 --- a/asf_search/search/error_reporting.py +++ b/asf_search/search/error_reporting.py @@ -1,5 +1,6 @@ from typing import Dict -from asf_search import ASFSearchOptions, ERROR_REPORTING_ENDPOINT +from asf_search import ASFSearchOptions +from asf_search import INTERNAL import requests import logging @@ -19,7 +20,7 @@ def report_search_error(search_options: ASFSearchOptions, message: str): message=f"Error Message: {str(message)}\nUser Agent: {user_agent} \ \nSearch Options: {{\n{search_options_list}\n}}" - response = requests.post(f'https://{ERROR_REPORTING_ENDPOINT}', data={'Message': "This error message and info was automatically generated:\n\n" + message}) + response = requests.post(f'https://{INTERNAL.ERROR_REPORTING_ENDPOINT}', data={'Message': "This error message and info was automatically generated:\n\n" + message}) try: response.raise_for_status() From f44549bc415e211f677652f25efc919e17c79f8f Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 15 Nov 2023 11:30:50 -0900 Subject: [PATCH 09/95] updates changelog --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 102d538e..4fc63f24 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,11 +25,20 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - --> +------ +## [v6.7.2](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.1...v6.7.2) +### Adds +- Adds constants for `dataset` keyword, under `asf_search.DATASET` + +### Changed +- Constants are no longer top level import, are now accessible through respective modules + ------ ## [v6.7.1](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.0...v6.7.1) ### Fixed - Fixes issue with certain S1 products not stacking properly in certain environments, which caused null `perpendicularBaseline` values +------ ## [v6.7.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.6.3...v6.7.0) ### Added - Adds new `dataset` keyword to `search()` as an alternative to `platform`. Allows users to get results from multiple platforms at once in a single page From 3c8dc3f58730417a1be541cb9915c7c33a2d23a9 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 15 Nov 2023 11:42:28 -0900 Subject: [PATCH 10/95] updates example notebook constant imports --- examples/1-Basic_Overview.ipynb | 2 +- examples/5-Download.ipynb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/1-Basic_Overview.ipynb b/examples/1-Basic_Overview.ipynb index b634ba94..75f8b7f8 100644 --- a/examples/1-Basic_Overview.ipynb +++ b/examples/1-Basic_Overview.ipynb @@ -419,7 +419,7 @@ "source": [ "# asf-search queries CMR with page sizes of 500, \n", "# so setting maxResults=1000 means asf-search will have to query cmr twice, each time returning 500 products\n", - "large_results_generator = asf.search_generator(maxResults=1000, platform=asf.SENTINEL1A)\n", + "large_results_generator = asf.search_generator(maxResults=1000, platform=asf.PLATFORM.SENTINEL1A)\n", "\n", "with open(\"search_results.metalink\", \"w\") as f:\n", " f.writelines(asf.export.results_to_metalink(large_results_generator))" diff --git a/examples/5-Download.ipynb b/examples/5-Download.ipynb index fad67ddc..66a5bb36 100644 --- a/examples/5-Download.ipynb +++ b/examples/5-Download.ipynb @@ -220,7 +220,7 @@ "metadata": {}, "outputs": [], "source": [ - "results_with_zips = asf.search(platform=asf.constants.PLATFORM.SENTINEL1, processingLevel=asf.constants.PRODUCT_TYPE.GRD_HD, maxResults=250)\n", + "results_with_zips = asf.search(platform=asf.PLATFORM.SENTINEL1, processingLevel=asf.PRODUCT_TYPE.GRD_HD, maxResults=250)\n", "\n", "with results_with_zips[0].remotezip(session=user_pass_session) as z:\n", " file_paths = [file.filename for file in z.filelist if file.filename.endswith('.tiff')]\n", From d5e1514f272c219f54ec08074c11d43065226bb7 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 15 Nov 2023 17:45:43 -0900 Subject: [PATCH 11/95] adds platform->concept-id dict used in translate.py when querying CMR, adds processingLevel->concept-id dict --- asf_search/CMR/datasets.py | 746 ++++++++++++++++++++++++++++++++++++ asf_search/CMR/translate.py | 15 +- 2 files changed, 760 insertions(+), 1 deletion(-) diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index b9bf61b6..826dd1ef 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -325,3 +325,749 @@ "SEASAT_SAR_L1_HDF5": ["C1206500991-ASF", "C1206144699-ASF"], }, } + +collections_per_platform = { + "Sentinel-1A": [ + "C1214470488-ASF", + "C1214470533-ASF", + "C1214470576-ASF", + "C1595422627-ASF", + "C1214470496-ASF", + "C1214470532-ASF", + "C1214472977-ASF", + "C1214472336-ASF", + "C1266376001-ASF", + "C1214472994-ASF", + "C1214470732-ASF", + "C1214473170-ASF", + "C1214470561-ASF", + "C1214471521-ASF", + "C1214470682-ASF", + "C2777443834-ASF", + "C2777436413-ASF", + "C1214471197-ASF", + "C1214471960-ASF", + "C1214472978-ASF", + "C1214473165-ASF", + "C2709161906-ASF", + "C1596065640-ASF", + "C1596065639-ASF", + "C1596065641-ASF", + "C1595765183-ASF", + "C2450786986-ASF", + "C1205428742-ASF", + "C1212201032-ASF", + "C1212212560-ASF", + "C1205264459-ASF", + "C1208117434-ASF", + "C1212209035-ASF", + "C1212209226-ASF", + "C1208115009-ASF", + "C1212158327-ASF", + "C1215704763-ASF", + "C1225776654-ASF", + "C1212158318-ASF", + "C1212212493-ASF", + "C1212158326-ASF", + "C1212233976-ASF", + "C1260726384-ASF", + "C1258354200-ASF", + "C1259982010-ASF", + "C1260721945-ASF", + "C1257995185-ASF", + "C1259976861-ASF", + "C1260726378-ASF", + "C1258354201-ASF", + "C1259981910-ASF", + "C1260721853-ASF", + "C1257995186-ASF", + "C1259974840-ASF", + "C1212200781-ASF", + "C1212209075-ASF", + "C1257024016-ASF", + "C1225776655-ASF", + "C1225776657-ASF", + "C1225776658-ASF", + "C1225776659-ASF", + "C1245953394-ASF", + "C1234413245-ASFDEV", + "C1234413229-ASFDEV", + "C1234413237-ASFDEV", + "C1234413238-ASFDEV", + "C1234413236-ASFDEV", + "C1234413230-ASFDEV", + "C1234413232-ASFDEV", + "C1234413235-ASFDEV", + "C1234413240-ASFDEV", + "C1234413234-ASFDEV", + "C1234413241-ASFDEV", + "C1234413233-ASFDEV", + "C1234413243-ASFDEV", + "C1234413244-ASFDEV", + "C1244552887-ASFDEV", + "C1234413228-ASFDEV", + "C1234413231-ASFDEV", + "C1234413239-ASFDEV", + "C1234413242-ASFDEV", + "C1257175154-ASFDEV", + "C1244598379-ASFDEV", + "C1240784657-ASFDEV", + ], + "Sentinel-1B": [ + "C1327985661-ASF", + "C1327985645-ASF", + "C1595422627-ASF", + "C1327985617-ASF", + "C1327985660-ASF", + "C1327985741-ASF", + "C1327985578-ASF", + "C1327985646-ASF", + "C1327985650-ASF", + "C1327985579-ASF", + "C1327985740-ASF", + "C1327985619-ASF", + "C1327985739-ASF", + "C1327985647-ASF", + "C2777443834-ASF", + "C2777436413-ASF", + "C1327985697-ASF", + "C1327985651-ASF", + "C1327985644-ASF", + "C1327985571-ASF", + "C1327985674-ASF", + "C2709161906-ASF", + "C1596065640-ASF", + "C1596065639-ASF", + "C1596065641-ASF", + "C1595765183-ASF", + "C2450786986-ASF", + "C1216244348-ASF", + "C1216244589-ASF", + "C1216244594-ASF", + "C1216244593-ASF", + "C1216244585-ASF", + "C1216244592-ASF", + "C1216244595-ASF", + "C1225776654-ASF", + "C1216244590-ASF", + "C1216244601-ASF", + "C1216244600-ASF", + "C1216244591-ASF", + "C1216244587-ASF", + "C1216244598-ASF", + "C1216244586-ASF", + "C1260726384-ASF", + "C1258354200-ASF", + "C1259982010-ASF", + "C1260721945-ASF", + "C1257995185-ASF", + "C1259976861-ASF", + "C1260726378-ASF", + "C1258354201-ASF", + "C1259981910-ASF", + "C1260721853-ASF", + "C1257995186-ASF", + "C1259974840-ASF", + "C1216244597-ASF", + "C1216244596-ASF", + "C1216244588-ASF", + "C1216244599-ASF", + "C1257024016-ASF", + "C1225776655-ASF", + "C1225776657-ASF", + "C1225776658-ASF", + "C1225776659-ASF", + "C1245953394-ASF", + "C1234413263-ASFDEV", + "C1234413247-ASFDEV", + "C1234413248-ASFDEV", + "C1234413255-ASFDEV", + "C1234413254-ASFDEV", + "C1234413256-ASFDEV", + "C1234413253-ASFDEV", + "C1234413252-ASFDEV", + "C1234413250-ASFDEV", + "C1234413259-ASFDEV", + "C1234413251-ASFDEV", + "C1234413261-ASFDEV", + "C1234413262-ASFDEV", + "C1234413258-ASFDEV", + "C1244552887-ASFDEV", + "C1234413246-ASFDEV", + "C1234413249-ASFDEV", + "C1234413257-ASFDEV", + "C1234413260-ASFDEV", + "C1257175154-ASFDEV", + "C1244598379-ASFDEV", + ], + "STS-59": [ + "C1661710578-ASF", + "C1661710581-ASF", + "C1661710583-ASF", + "C1661710586-ASF", + "C1661710588-ASF", + "C1661710590-ASF", + "C1226557819-ASF", + "C1226557809-ASF", + "C1226557808-ASF", + "C1226557810-ASF", + "C1226557811-ASF", + "C1226557812-ASF", + "C1234413264-ASFDEV", + "C1234413265-ASFDEV", + "C1234413266-ASFDEV", + "C1234413267-ASFDEV", + "C1234413268-ASFDEV", + "C1234413269-ASFDEV", + ], + "STS-68": [ + "C1661710593-ASF", + "C1661710596-ASF", + "C1661710597-ASF", + "C1661710600-ASF", + "C1661710603-ASF", + "C1661710604-ASF", + "C1226557813-ASF", + "C1226557814-ASF", + "C1226557815-ASF", + "C1226557816-ASF", + "C1226557817-ASF", + "C1226557818-ASF", + "C1234413270-ASFDEV", + "C1234413271-ASFDEV", + "C1234413272-ASFDEV", + "C1234413273-ASFDEV", + "C1234413274-ASFDEV", + "C1234413275-ASFDEV", + ], + "ALOS": [ + "C1206487504-ASF", + "C1206487217-ASF", + "C1206485940-ASF", + "C1206156901-ASF", + "C1206485320-ASF", + "C1206485527-ASF", + "C1808440897-ASF", + "C2011599335-ASF", + "C1207181535-ASF", + "C1207710476-ASF", + "C1234712303-ASF", + "C1239927797-ASF", + "C1205261223-ASF", + "C1233629671-ASF", + "C1208013295-ASF", + "C1207019609-ASF", + "C1229740239-ASF", + "C1239611505-ASFDEV", + "C1238733834-ASFDEV", + "C1234413224-ASFDEV", + ], + "ERS-1": [ + "C1210197768-ASF", + "C1211627521-ASF", + "C1205261222-ASF", + "C1205302527-ASF", + ], + "ERS-2": [ + "C1208794942-ASF", + "C1209373626-ASF", + "C1207143701-ASF", + "C1207144966-ASF", + ], + "JERS-1": [ + "C1208662092-ASF", + "C1207933168-ASF", + "C1207175327-ASF", + "C1207177736-ASF", + ], + "RADARSAT-1": [ + "C1206897141-ASF", + "C1206936391-ASF", + "C1205181982-ASF", + "C1215670813-ASF", + "C1215709884-ASF", + "C1215709880-ASF", + "C1215714443-ASF", + "C1215775284-ASF", + "C1215614037-ASF", + ], + "DC-8": [ + "C1213921661-ASF", + "C1213921626-ASF", + "C1213928843-ASF", + "C1213927035-ASF", + "C179001730-ASF", + "C1213925022-ASF", + "C1213926419-ASF", + "C1213926777-ASF", + "C1213927939-ASF", + "C1213928209-ASF", + "C1205256880-ASF", + "C1208652494-ASF", + "C1000000306-ASF", + "C1208713702-ASF", + "C1208707768-ASF", + "C1208655639-ASF", + "C1208680681-ASF", + "C1208691361-ASF", + "C1208703384-ASF", + ], + "SEASAT 1": [ + "C1206500826-ASF", + "C1206500991-ASF", + "C1206752770-ASF", + "C1206144699-ASF", + ], + "SMAP": [ + "C1243122884-ASF", + "C1243124139-ASF", + "C1214473171-ASF", + "C1243149604-ASF", + "C1214473426-ASF", + "C1243119801-ASF", + "C1214473839-ASF", + "C1243133204-ASF", + "C1243197402-ASF", + "C1243215430-ASF", + "C1243124754-ASF", + "C1243141638-ASF", + "C1243162394-ASF", + "C1243168733-ASF", + "C1243168866-ASF", + "C1214473308-ASF", + "C1243253631-ASF", + "C1243133445-ASF", + "C1214473550-ASF", + "C1243197502-ASF", + "C1243126328-ASF", + "C1214474243-ASF", + "C1243216659-ASF", + "C1243129847-ASF", + "C1214473367-ASF", + "C1243268956-ASF", + "C1243144528-ASF", + "C1214473624-ASF", + "C1243228612-ASF", + "C1243136142-ASF", + "C1214474435-ASF", + "C1243255360-ASF", + "C1243140611-ASF", + "C1233103964-ASF", + "C1216074923-ASF", + "C1212243761-ASF", + "C1213091807-ASF", + "C1216074922-ASF", + "C1212243437-ASF", + "C1213096699-ASF", + "C1216074750-ASF", + "C1212249653-ASF", + "C1213101573-ASF", + "C1216074751-ASF", + "C1213136240-ASF", + "C1216074755-ASF", + "C1213136752-ASF", + "C1213136799-ASF", + "C1213136709-ASF", + "C1213136844-ASF", + "C1212249811-ASF", + "C1213125007-ASF", + "C1216074919-ASF", + "C1212196951-ASF", + "C1213115690-ASF", + "C1216074758-ASF", + "C1212243666-ASF", + "C1213115896-ASF", + "C1216074761-ASF", + "C1212250364-ASF", + "C1213134622-ASF", + "C1216074770-ASF", + "C1212246173-ASF", + "C1213125156-ASF", + "C1216074764-ASF", + "C1212249773-ASF", + "C1213134486-ASF", + "C1233101609-ASF", + ], + "G-III": [ + "C1214353986-ASF", + "C1214336045-ASF", + "C1214336717-ASF", + "C1214335430-ASF", + "C1214335471-ASF", + "C1214335903-ASF", + "C1214336154-ASF", + "C1214336554-ASF", + "C1214353593-ASF", + "C1214353754-ASF", + "C1214353859-ASF", + "C1214337770-ASF", + "C1214354144-ASF", + "C1214354235-ASF", + "C1214343609-ASF", + "C1214354031-ASF", + "C1214408428-ASF", + "C1214419355-ASF", + "C1210487703-ASF", + "C1212030772-ASF", + "C1206116665-ASF", + "C1206132445-ASF", + "C1211962154-ASF", + "C1212001698-ASF", + "C1212005594-ASF", + "C1212019993-ASF", + "C1207638502-ASF", + "C1210025872-ASF", + "C1210485039-ASF", + "C1207188317-ASF", + "C1210546638-ASF", + "C1206122195-ASF", + "C1209970710-ASF", + "C1207038647-ASF", + "C1210599503-ASF", + "C1210599673-ASF", + ], +} + + +collections_by_processing_level: { + "SLC": [ + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV", + "C1661710588-ASF", + "C1661710590-ASF", + "C1226557811-ASF", + "C1226557812-ASF", + "C1661710603-ASF", + "C1661710604-ASF", + "C1226557817-ASF", + "C1226557818-ASF", + ], + "GRD_HD": [ + "C1214470533-ASF", + "C1212201032-ASF", + "C1234413229-ASFDEV", + "C1327985645-ASF", + "C1216244589-ASF", + ], + "METADATA_GRD_HD": [ + "C1214470576-ASF", + "C1212209226-ASF", + "C1234413232-ASFDEV", + "C1327985741-ASF", + "C1216244601-ASF", + ], + "GUNW_STD": [ + "C1595422627-ASF", + "C1225776654-ASF", + "C1595422627-ASF", + "C1225776654-ASF", + ], + "METADATA_SLC": [ + "C1214470496-ASF", + "C1208117434-ASF", + "C1234413236-ASFDEV", + "C1327985617-ASF", + "C1216244585-ASF", + "C1234413254-ASFDEV", + ], + "METADATA_RAW": [ + "C1214470532-ASF", + "C1208115009-ASF", + "C1234413235-ASFDEV", + "C1327985650-ASF", + "C1216244595-ASF", + ], + "OCN": [ + "C1214472977-ASF", + "C1212212560-ASF", + "C1234413237-ASFDEV", + "C1327985579-ASF", + "C1216244593-ASF", + "C1234413255-ASFDEV", + ], + "METADATA_GRD_MD": [ + "C1214472336-ASF", + "C1212212493-ASF", + "C1234413233-ASFDEV", + "C1327985578-ASF", + "C1216244591-ASF", + ], + "METADATA_OCN": [ + "C1266376001-ASF", + "C1215704763-ASF", + "C1234413234-ASFDEV", + "C1327985646-ASF", + "C1216244590-ASF", + "C1234413252-ASFDEV", + ], + "GRD_MS": [ + "C1214472994-ASF", + "C1212158318-ASF", + "C1327985740-ASF", + "C1216244600-ASF", + ], + "METADATA_GRD_HS": [ + "C1214470732-ASF", + "C1212158326-ASF", + "C1234413243-ASFDEV", + "C1327985619-ASF", + "C1216244587-ASF", + ], + "METADATA_GRD_MS": [ + "C1214473170-ASF", + "C1212233976-ASF", + "C1327985739-ASF", + "C1216244598-ASF", + ], + "RAW": [ + "C1214470561-ASF", + "C1205264459-ASF", + "C1234413238-ASFDEV", + "C1327985647-ASF", + "C1216244592-ASF", + ], + "GRD_MD": [ + "C1214471521-ASF", + "C1212209035-ASF", + "C1234413230-ASFDEV", + "C1327985660-ASF", + "C1216244594-ASF", + ], + "GRD_HS": [ + "C1214470682-ASF", + "C1212158327-ASF", + "C1234413240-ASFDEV", + "C1327985571-ASF", + "C1216244586-ASF", + ], + "CSLC": [ + "C2777443834-ASF", + "C1260721945-ASF", + "C1259976861-ASF", + "C2777443834-ASF", + "C1260721945-ASF", + "C1259976861-ASF", + ], + "RTC": [ + "C2777436413-ASF", + "C1260721853-ASF", + "C1259974840-ASF", + "C2777436413-ASF", + "C1260721853-ASF", + "C1259974840-ASF", + ], + "GRD_FD": ["C1214471197-ASF", "C1212200781-ASF"], + "METADATA_GRD_FD": ["C1214471960-ASF", "C1212209075-ASF"], + "BURST": [ + "C2709161906-ASF", + "C1257024016-ASF", + "C1257175154-ASFDEV", + "C2709161906-ASF", + "C1257024016-ASF", + "C1257175154-ASFDEV", + ], + "GUNW_AMP": [ + "C1596065640-ASF", + "C1225776655-ASF", + "C1596065640-ASF", + "C1225776655-ASF", + ], + "GUNW_COH": [ + "C1596065639-ASF", + "C1225776657-ASF", + "C1596065639-ASF", + "C1225776657-ASF", + ], + "GUNW_CON": [ + "C1596065641-ASF", + "C1225776658-ASF", + "C1596065641-ASF", + "C1225776658-ASF", + ], + "GUNW_UNW": [ + "C1595765183-ASF", + "C1225776659-ASF", + "C1595765183-ASF", + "C1225776659-ASF", + ], + "CSLC-STATIC": ["C1259982010-ASF", "C1259982010-ASF"], + "RTC-STATIC": [ + "C1260726378-ASF", + "C1259981910-ASF", + "C1260726378-ASF", + "C1259981910-ASF", + ], + "GRD": [ + "C1661710583-ASF", + "C1661710586-ASF", + "C1226557808-ASF", + "C1226557810-ASF", + "C1661710597-ASF", + "C1661710600-ASF", + "C1226557815-ASF", + "C1226557816-ASF", + ], + "RTC_HI_RES": ["C1206487504-ASF", "C1207181535-ASF"], + "RTC_LOW_RES": ["C1206487217-ASF", "C1208013295-ASF"], + "L1.5": ["C1206485940-ASF", "C1205261223-ASF"], + "KMZ": [ + "C1206156901-ASF", + "C1207019609-ASF", + "C1214336554-ASF", + "C1214353859-ASF", + "C1212019993-ASF", + "C1210485039-ASF", + ], + "L1.0": ["C1206485320-ASF"], + "L1.1": ["C1206485527-ASF", "C1207710476-ASF", "C1239611505-ASFDEV"], + "L2.2": ["C2011599335-ASF", "C1239927797-ASF", "C1238733834-ASFDEV"], + "L0": [ + "C1210197768-ASF", + "C1205261222-ASF", + "C1208794942-ASF", + "C1207143701-ASF", + "C1207933168-ASF", + "C1207175327-ASF", + "C1206897141-ASF", + ], + "L1": [ + "C1211627521-ASF", + "C1205302527-ASF", + "C1209373626-ASF", + "C1207144966-ASF", + "C1208662092-ASF", + "C1207177736-ASF", + "C1206936391-ASF", + "C1205181982-ASF", + "C1206500991-ASF", + "C1206144699-ASF", + ], + "3FP": ["C1213921661-ASF", "C1213928843-ASF", "C1205256880-ASF", "C1208713702-ASF"], + "JPG": ["C1213921626-ASF", "C1000000306-ASF"], + "CSTOKES": ["C1213927035-ASF", "C1208707768-ASF"], + "DEM": ["C179001730-ASF", "C1208655639-ASF"], + "CTIF": ["C1213925022-ASF", "C1208680681-ASF"], + "LTIF": ["C1213926419-ASF", "C1208691361-ASF"], + "PTIF": ["C1213926777-ASF", "C1208703384-ASF"], + "LSTOKES": ["C1213927939-ASF"], + "PSTOKES": ["C1213928209-ASF"], + "ATI": ["C1208652494-ASF"], + "GEOTIFF": ["C1206500826-ASF", "C1206752770-ASF"], + "L1A_Radar_RO_ISO_XML": [ + "C1243122884-ASF", + "C1243141638-ASF", + "C1243162394-ASF", + "C1233103964-ASF", + "C1213136752-ASF", + "C1213136799-ASF", + ], + "L1A_Radar_RO_QA": [ + "C1243124139-ASF", + "C1243168733-ASF", + "C1243168866-ASF", + "C1216074923-ASF", + "C1213136709-ASF", + "C1213136844-ASF", + ], + "L1A_Radar_HDF5": [ + "C1214473171-ASF", + "C1243149604-ASF", + "C1212243761-ASF", + "C1213091807-ASF", + ], + "L1A_Radar_ISO_XML": [ + "C1214473426-ASF", + "C1243119801-ASF", + "C1212243437-ASF", + "C1213096699-ASF", + ], + "L1A_Radar_QA": [ + "C1214473839-ASF", + "C1243133204-ASF", + "C1212249653-ASF", + "C1213101573-ASF", + ], + "L1A_Radar_RO_HDF5": [ + "C1243197402-ASF", + "C1243215430-ASF", + "C1243124754-ASF", + "C1213136240-ASF", + "C1216074755-ASF", + ], + "L1B_S0_LoRes_HDF5": [ + "C1214473308-ASF", + "C1243253631-ASF", + "C1243133445-ASF", + "C1212249811-ASF", + "C1213125007-ASF", + "C1216074919-ASF", + ], + "L1B_S0_LoRes_ISO_XML": [ + "C1214473550-ASF", + "C1243197502-ASF", + "C1243126328-ASF", + "C1212196951-ASF", + "C1213115690-ASF", + "C1216074758-ASF", + ], + "L1B_S0_LoRes_QA": [ + "C1214474243-ASF", + "C1243216659-ASF", + "C1243129847-ASF", + "C1212243666-ASF", + "C1213115896-ASF", + "C1216074761-ASF", + ], + "L1C_S0_HiRes_HDF5": [ + "C1214473367-ASF", + "C1243268956-ASF", + "C1243144528-ASF", + "C1212250364-ASF", + "C1213134622-ASF", + "C1216074770-ASF", + ], + "L1C_S0_HiRes_ISO_XML": [ + "C1214473624-ASF", + "C1243228612-ASF", + "C1243136142-ASF", + "C1212246173-ASF", + "C1213125156-ASF", + "C1216074764-ASF", + ], + "L1C_S0_HiRes_QA": [ + "C1214474435-ASF", + "C1243255360-ASF", + "C1243140611-ASF", + "C1212249773-ASF", + "C1213134486-ASF", + "C1233101609-ASF", + ], + "METADATA": [ + "C1214353986-ASF", + "C1214336717-ASF", + "C1210487703-ASF", + "C1212030772-ASF", + ], + "INTERFEROMETRY": ["C1214336045-ASF", "C1212001698-ASF"], + "AMPLITUDE": ["C1214335430-ASF", "C1206116665-ASF"], + "AMPLITUDE_GRD": ["C1214335471-ASF", "C1206132445-ASF"], + "DEM_TIFF": [ + "C1214335903-ASF", + "C1214353593-ASF", + "C1211962154-ASF", + "C1207638502-ASF", + ], + "INTERFEROMETRY_GRD": ["C1214336154-ASF", "C1212005594-ASF"], + "INC": ["C1214353754-ASF", "C1210025872-ASF"], + "PROJECTED": ["C1214337770-ASF", "C1207188317-ASF"], + "PROJECTED_ML3X3": ["C1214354144-ASF", "C1210546638-ASF"], + "PROJECTED_ML5X5": ["C1214354235-ASF", "C1206122195-ASF"], + "COMPLEX": ["C1214343609-ASF", "C1209970710-ASF"], + "PAULI": ["C1214354031-ASF", "C1207038647-ASF"], + "SLOPE": ["C1214408428-ASF", "C1210599503-ASF"], + "STOKES": ["C1214419355-ASF", "C1210599673-ASF"], +} diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index 6da90f4c..c34f014a 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -7,7 +7,7 @@ from shapely.geometry import Polygon from shapely.geometry.base import BaseGeometry from .field_map import field_map -from .datasets import dataset_collections +from .datasets import dataset_collections, collections_per_platform import logging @@ -61,6 +61,19 @@ def translate_opts(opts: ASFSearchOptions) -> list: dict_opts.pop('dataset') + if 'platform' in dict_opts: + if 'collections' not in dict_opts: + dict_opts['collections'] = [] + + missing = [platform for platform in dict_opts['platform'] if collections_per_platform.get(platform) is None] + + # collections limit platform searches, so if there are any we don't have collections for we skip this optimization + if len(missing) == 0: + for platform in dict_opts['platform']: + if (collections := collections_per_platform.get(platform.upper())): + dict_opts['collections'].extend(collections) + print(f"optimizing for platform search {dict_opts['platform']}") + dict_opts.pop('platform') # convert the above parameters to a list of key/value tuples cmr_opts = [] for (key, val) in dict_opts.items(): From 35457994c34428d66183d6a5e59353d5a13f0386 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 16 Nov 2023 11:54:05 -0900 Subject: [PATCH 12/95] moves dataset/platform collection aliasing into subquery.py, adds processingLevel aliasing --- asf_search/CMR/__init__.py | 2 +- asf_search/CMR/datasets.py | 6 +-- asf_search/CMR/subquery.py | 76 ++++++++++++++++++++++++++- asf_search/CMR/translate.py | 48 +++++++++-------- asf_search/search/search_generator.py | 1 + 5 files changed, 105 insertions(+), 28 deletions(-) diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index 905e8eb3..6e40db42 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -2,4 +2,4 @@ from .subquery import build_subqueries from .translate import translate_product, translate_opts, get_additional_fields from .field_map import field_map -from .datasets import dataset_collections \ No newline at end of file +from .datasets import dataset_collections, collections_per_platform, collections_by_processing_level \ No newline at end of file diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index 826dd1ef..73ed6ae6 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -327,7 +327,7 @@ } collections_per_platform = { - "Sentinel-1A": [ + "SENTINEL-1A": [ "C1214470488-ASF", "C1214470533-ASF", "C1214470576-ASF", @@ -413,7 +413,7 @@ "C1244598379-ASFDEV", "C1240784657-ASFDEV", ], - "Sentinel-1B": [ + "SENTINEL-1B": [ "C1327985661-ASF", "C1327985645-ASF", "C1595422627-ASF", @@ -729,7 +729,7 @@ } -collections_by_processing_level: { +collections_by_processing_level = { "SLC": [ "C1214470488-ASF", "C1205428742-ASF", diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 42bc49cd..b1bc1e82 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -5,6 +5,8 @@ from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.constants import CMR_PAGE_SIZE +from asf_search.CMR.datasets import collections_by_processing_level, collections_per_platform, dataset_collections +from numpy import intersect1d def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: """ @@ -22,11 +24,83 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: if params.get('product_list') is not None: params['product_list'] = chunk_list(params['product_list'], CMR_PAGE_SIZE) - list_param_names = ['platform', 'season', 'collections', 'dataset'] # these parameters will dodge the subquery system + list_param_names = ['platform', 'season', 'collections', 'dataset', 'processingLevel_collections'] # these parameters will dodge the subquery system skip_param_names = ['maxResults']# these params exist in opts, but shouldn't be passed on to subqueries at ALL params = dict([ (k, v) for k, v in params.items() if k not in skip_param_names ]) + # in case all instances of platform and/or processingLevel can be substituded by a concept id + keyword_collection_aliases = [] + if 'processingLevel' in params.keys(): + concept_id_aliases = [] + for processingLevel in params['processingLevel']: + if alias := collections_by_processing_level.get(processingLevel): + concept_id_aliases.extend(alias) + else: + concept_id_aliases = [] + break + + if len(concept_id_aliases): + params.pop('processingLevel') + params['processingLevel_collections'] = concept_id_aliases + + if 'dataset' in params: + if 'collections' not in params: + params['collections'] = [] + + for dataset in params['dataset']: + if collections_by_short_name := dataset_collections.get(dataset): + for concept_ids in collections_by_short_name.values(): + params['collections'].extend(concept_ids) + else: + raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') + + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + if len(processingLevel_collections): + params['collections'] = intersect1d(processingLevel_collections, params['collections']).tolist() + + params.pop('processingLevel_collections') + + if 'platform' in params: + params.pop('dataset') + params.pop('dataset') + + elif 'platform' in params: + if 'collections' not in params: + params['collections'] = [] + + missing = [platform for platform in params['platform'] if collections_per_platform.get(platform.upper()) is None] + # collections limit platform searches, so if there are any we don't have collections for we skip this optimization + if len(missing) == 0: + for platform in params['platform']: + if (collections := collections_per_platform.get(platform.upper())): + params['collections'].extend(collections) + + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + if len(processingLevel_collections): + params['collections'] = intersect1d(processingLevel_collections, params['collections']).tolist() + + params.pop('processingLevel_collections') + + params.pop('platform') + else: + if params.get('collections') is None: + params['collections'] = [] + if params.get('processingLevel_collections') is not None: + params['collections'] = params.get('processingLevel_collections') + else: + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + params['collections'] = intersect1d(processingLevel_collections, params['collections']).tolist() + + if params.get('processingLevel_collections') is not None: + params.pop('processingLevel_collections') + + + + + + + subquery_params, list_params = {}, {} for k, v in params.items(): if k in list_param_names: diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index c34f014a..af70b2fa 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -9,6 +9,8 @@ from .field_map import field_map from .datasets import dataset_collections, collections_per_platform +from numpy import intersect1d + import logging @@ -48,32 +50,32 @@ def translate_opts(opts: ASFSearchOptions) -> list: if any(key in dict_opts for key in ['start', 'end', 'season']): dict_opts = fix_date(dict_opts) - if 'dataset' in dict_opts: - if 'collections' not in dict_opts: - dict_opts['collections'] = [] + # if 'dataset' in dict_opts: + # if 'collections' not in dict_opts: + # dict_opts['collections'] = [] - for dataset in dict_opts['dataset']: - if collections_by_short_name := dataset_collections.get(dataset): - for concept_ids in collections_by_short_name.values(): - dict_opts['collections'].extend(concept_ids) - else: - raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - - dict_opts.pop('dataset') + # for dataset in dict_opts['dataset']: + # if collections_by_short_name := dataset_collections.get(dataset): + # for concept_ids in collections_by_short_name.values(): + # dict_opts['collections'].extend(concept_ids) + # else: + # raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') + + # dict_opts.pop('dataset') - if 'platform' in dict_opts: - if 'collections' not in dict_opts: - dict_opts['collections'] = [] + # if 'platform' in dict_opts: + # if 'collections' not in dict_opts: + # dict_opts['collections'] = [] - missing = [platform for platform in dict_opts['platform'] if collections_per_platform.get(platform) is None] - - # collections limit platform searches, so if there are any we don't have collections for we skip this optimization - if len(missing) == 0: - for platform in dict_opts['platform']: - if (collections := collections_per_platform.get(platform.upper())): - dict_opts['collections'].extend(collections) - print(f"optimizing for platform search {dict_opts['platform']}") - dict_opts.pop('platform') + # missing = [platform for platform in dict_opts['platform'] if collections_per_platform.get(platform) is None] + + # # collections limit platform searches, so if there are any we don't have collections for we skip this optimization + # if len(missing) == 0: + # for platform in dict_opts['platform']: + # if (collections := collections_per_platform.get(platform.upper())): + # dict_opts['collections'].extend(collections) + # print(f"optimizing for platform search {dict_opts['platform']}") + # dict_opts.pop('platform') # convert the above parameters to a list of key/value tuples cmr_opts = [] for (key, val) in dict_opts.items(): diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 7ad445f1..0cd8af5e 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -82,6 +82,7 @@ def search_generator( total = 0 queries = build_subqueries(opts) + print(f"# of subqueries {len(queries)}") for query in queries: translated_opts = translate_opts(query) cmr_search_after_header = "" From b53aea35d7323fe8d4a1bf7042019e85eb63b307 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 16 Nov 2023 14:29:20 -0900 Subject: [PATCH 13/95] adds build_subquery test cases --- asf_search/CMR/subquery.py | 6 +- tests/Search/test_search.py | 8 ++ tests/pytest-config.yml | 5 + tests/pytest-managers.py | 9 +- tests/yml_tests/test_search.yml | 210 ++++++++++++++++++++++++++++++++ 5 files changed, 233 insertions(+), 5 deletions(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index b1bc1e82..a53a6f87 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -57,7 +57,7 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: if (processingLevel_collections := params.get('processingLevel_collections')) is not None: if len(processingLevel_collections): - params['collections'] = intersect1d(processingLevel_collections, params['collections']).tolist() + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) params.pop('processingLevel_collections') @@ -78,7 +78,7 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: if (processingLevel_collections := params.get('processingLevel_collections')) is not None: if len(processingLevel_collections): - params['collections'] = intersect1d(processingLevel_collections, params['collections']).tolist() + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) params.pop('processingLevel_collections') @@ -90,7 +90,7 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: params['collections'] = params.get('processingLevel_collections') else: if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - params['collections'] = intersect1d(processingLevel_collections, params['collections']).tolist() + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) if params.get('processingLevel_collections') is not None: params.pop('processingLevel_collections') diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index 463d834a..20d12ff9 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -1,6 +1,7 @@ from numbers import Number from asf_search import ASFSearchOptions from asf_search.ASFProduct import ASFProduct +from asf_search.CMR.subquery import build_subqueries from asf_search.CMR.translate import get from asf_search.constants import INTERNAL from asf_search.exceptions import ASFSearchError @@ -91,3 +92,10 @@ def run_test_dataset_search(datasets: List): # and check that results are limited to the expected datasets by their shortname for shortName in shortNames: assert shortName in valid_shortnames + +def run_test_build_subqueries(params: ASFSearchOptions, expected: List): + actual = build_subqueries(params) + for a, b in zip(actual, expected): + for a_param, b_param in zip(a, b): + if isinstance(b_param, list): + assert len(set(b_param).difference(set(a_param))) == 0 diff --git a/tests/pytest-config.yml b/tests/pytest-config.yml index 285b9fe3..5975b615 100644 --- a/tests/pytest-config.yml +++ b/tests/pytest-config.yml @@ -204,6 +204,11 @@ test_types: required_keys: dataset method: test_search_dataset +- For running build_subquery tests: + required_in_title: search-build_subquery + required_keys: ['params', 'expected'] + method: test_build_subqueries + - For running jupyter notebook example tests: required_keys: notebook method: test_notebook_examples diff --git a/tests/pytest-managers.py b/tests/pytest-managers.py index 438b1520..fd766d1d 100644 --- a/tests/pytest-managers.py +++ b/tests/pytest-managers.py @@ -7,7 +7,7 @@ from ASFSearchResults.test_ASFSearchResults import run_test_output_format, run_test_ASFSearchResults_intersection from ASFSession.test_ASFSession import run_auth_with_cookiejar, run_auth_with_creds, run_auth_with_token, run_test_asf_session_rebuild_auth from BaselineSearch.test_baseline_search import * -from Search.test_search import run_test_ASFSearchResults, run_test_dataset_search, run_test_search, run_test_search_http_error +from Search.test_search import run_test_ASFSearchResults, run_test_build_subqueries, run_test_dataset_search, run_test_search, run_test_search_http_error from Search.test_search_generator import run_test_search_generator, run_test_search_generator_multi from CMR.test_MissionList import run_test_get_project_names @@ -420,7 +420,12 @@ def test_ASFSearchResults_intersection(**kwargs) -> None: def test_search_dataset(**kwargs) -> None: dataset = get_resource(kwargs['test_info']['dataset']) run_test_dataset_search(dataset) - + +def test_build_subqueries(**kwargs) -> None: + params = ASFSearchOptions(**get_resource(kwargs['test_info']['params'])) + expected = [ASFSearchOptions(**subquery) for subquery in get_resource(kwargs['test_info']['expected'])] + run_test_build_subqueries(params, expected) + def test_serialization(**args) -> None: test_info = args['test_info'] product = get_resource(test_info.get('product')) diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index 2e336bcd..92da6c63 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -54,3 +54,213 @@ tests: - test-search-dataset S1 Datasets and fake dataset: dataset: ['SENTINEL-1', 'SLC-BURST', 'OPERA-S1', 'FAKE-DATASET-V2'] + +- test-search-build_subquery S1-Platform: + params: + platform: ['SENTINEL-1A', 'SENTINEL-1B'] + expected: + [{ + collections: [ + "C1214470488-ASF", # S1A + "C1214470533-ASF", + "C1214470576-ASF", + "C1595422627-ASF", + "C1214470496-ASF", + "C1214470532-ASF", + "C1214472977-ASF", + "C1214472336-ASF", + "C1266376001-ASF", + "C1214472994-ASF", + "C1214470732-ASF", + "C1214473170-ASF", + "C1214470561-ASF", + "C1214471521-ASF", + "C1214470682-ASF", + "C2777443834-ASF", + "C2777436413-ASF", + "C1214471197-ASF", + "C1214471960-ASF", + "C1214472978-ASF", + "C1214473165-ASF", + "C2709161906-ASF", + "C1596065640-ASF", + "C1596065639-ASF", + "C1596065641-ASF", + "C1595765183-ASF", + "C2450786986-ASF", + "C1205428742-ASF", + "C1212201032-ASF", + "C1212212560-ASF", + "C1205264459-ASF", + "C1208117434-ASF", + "C1212209035-ASF", + "C1212209226-ASF", + "C1208115009-ASF", + "C1212158327-ASF", + "C1215704763-ASF", + "C1225776654-ASF", + "C1212158318-ASF", + "C1212212493-ASF", + "C1212158326-ASF", + "C1212233976-ASF", + "C1260726384-ASF", + "C1258354200-ASF", + "C1259982010-ASF", + "C1260721945-ASF", + "C1257995185-ASF", + "C1259976861-ASF", + "C1260726378-ASF", + "C1258354201-ASF", + "C1259981910-ASF", + "C1260721853-ASF", + "C1257995186-ASF", + "C1259974840-ASF", + "C1212200781-ASF", + "C1212209075-ASF", + "C1257024016-ASF", + "C1225776655-ASF", + "C1225776657-ASF", + "C1225776658-ASF", + "C1225776659-ASF", + "C1245953394-ASF", + "C1234413245-ASFDEV", + "C1234413229-ASFDEV", + "C1234413237-ASFDEV", + "C1234413238-ASFDEV", + "C1234413236-ASFDEV", + "C1234413230-ASFDEV", + "C1234413232-ASFDEV", + "C1234413235-ASFDEV", + "C1234413240-ASFDEV", + "C1234413234-ASFDEV", + "C1234413241-ASFDEV", + "C1234413233-ASFDEV", + "C1234413243-ASFDEV", + "C1234413244-ASFDEV", + "C1244552887-ASFDEV", + "C1234413228-ASFDEV", + "C1234413231-ASFDEV", + "C1234413239-ASFDEV", + "C1234413242-ASFDEV", + "C1257175154-ASFDEV", + "C1244598379-ASFDEV", + "C1240784657-ASFDEV", + "C1327985661-ASF", # S1B + "C1327985645-ASF", + "C1595422627-ASF", + "C1327985617-ASF", + "C1327985660-ASF", + "C1327985741-ASF", + "C1327985578-ASF", + "C1327985646-ASF", + "C1327985650-ASF", + "C1327985579-ASF", + "C1327985740-ASF", + "C1327985619-ASF", + "C1327985739-ASF", + "C1327985647-ASF", + "C2777443834-ASF", + "C2777436413-ASF", + "C1327985697-ASF", + "C1327985651-ASF", + "C1327985644-ASF", + "C1327985571-ASF", + "C1327985674-ASF", + "C2709161906-ASF", + "C1596065640-ASF", + "C1596065639-ASF", + "C1596065641-ASF", + "C1595765183-ASF", + "C2450786986-ASF", + "C1216244348-ASF", + "C1216244589-ASF", + "C1216244594-ASF", + "C1216244593-ASF", + "C1216244585-ASF", + "C1216244592-ASF", + "C1216244595-ASF", + "C1225776654-ASF", + "C1216244590-ASF", + "C1216244601-ASF", + "C1216244600-ASF", + "C1216244591-ASF", + "C1216244587-ASF", + "C1216244598-ASF", + "C1216244586-ASF", + "C1260726384-ASF", + "C1258354200-ASF", + "C1259982010-ASF", + "C1260721945-ASF", + "C1257995185-ASF", + "C1259976861-ASF", + "C1260726378-ASF", + "C1258354201-ASF", + "C1259981910-ASF", + "C1260721853-ASF", + "C1257995186-ASF", + "C1259974840-ASF", + "C1216244597-ASF", + "C1216244596-ASF", + "C1216244588-ASF", + "C1216244599-ASF", + "C1257024016-ASF", + "C1225776655-ASF", + "C1225776657-ASF", + "C1225776658-ASF", + "C1225776659-ASF", + "C1245953394-ASF", + "C1234413263-ASFDEV", + "C1234413247-ASFDEV", + "C1234413248-ASFDEV", + "C1234413255-ASFDEV", + "C1234413254-ASFDEV", + "C1234413256-ASFDEV", + "C1234413253-ASFDEV", + "C1234413252-ASFDEV", + "C1234413250-ASFDEV", + "C1234413259-ASFDEV", + "C1234413251-ASFDEV", + "C1234413261-ASFDEV", + "C1234413262-ASFDEV", + "C1234413258-ASFDEV", + "C1244552887-ASFDEV", + "C1234413246-ASFDEV", + "C1234413249-ASFDEV", + "C1234413257-ASFDEV", + "C1234413260-ASFDEV", + "C1257175154-ASFDEV", + "C1244598379-ASFDEV" + ] + }] + +- test-search-build_subquery S1-Platform SLC: + params: + platform: ['SENTINEL-1A', 'SENTINEL-1B'] + processingLevel: ['SLC'] + expected: + [{ + collections: [ + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV" + ] + }] + +- test-search-build_subquery S1-Dataset SLC: + params: + dataset: ['SENTINEL-1'] + processingLevel: ['SLC'] + expected: + [{ + collections: [ + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV" + ] + }] \ No newline at end of file From 883905690b6ab6b8301c5c0086055880e726cd51 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 16 Nov 2023 15:00:14 -0900 Subject: [PATCH 14/95] adds extra edge case tests --- tests/yml_tests/test_search.yml | 58 +++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index 92da6c63..e4d8fb59 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -263,4 +263,62 @@ tests: "C1216244348-ASF", "C1234413263-ASFDEV" ] + }] + +- test-search-build_subquery INTERFEROMETRY: + params: + processingLevel: [INTERFEROMETRY] + expected: [{ + collections: [ + "C1214336045-ASF", "C1212001698-ASF" + ] + }] + +- test-search-build_subquery INTERFEROMETRY & SLC Collection: + params: + processingLevel: [INTERFEROMETRY] + collections: [ #S1 SLC collections + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV", + ] + expected: [{ + collections: [ + "C1214336045-ASF", + "C1212001698-ASF", + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV" + ] + }] + +- test-search-build_subquery INTERFEROMETRY & SLC Collection with duplicate INTERFEROMETRY collection: + params: + processingLevel: [INTERFEROMETRY] + collections: [ #S1 SLC collections + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV", + "C1212001698-ASF" # INTERFEROMETRY + ] + expected: [{ + collections: [ + "C1214336045-ASF", + "C1212001698-ASF", + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV" + ] }] \ No newline at end of file From 06d7ad9e6b09d637c6efcab3c7c14bf8e3d2697d Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 16 Nov 2023 15:27:57 -0900 Subject: [PATCH 15/95] adds more test cases --- asf_search/CMR/subquery.py | 34 ++++++++++---------- tests/yml_tests/test_search.yml | 55 +++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 18 deletions(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index a53a6f87..3c187ec9 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -45,31 +45,29 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: params['processingLevel_collections'] = concept_id_aliases if 'dataset' in params: - if 'collections' not in params: - params['collections'] = [] - - for dataset in params['dataset']: - if collections_by_short_name := dataset_collections.get(dataset): - for concept_ids in collections_by_short_name.values(): - params['collections'].extend(concept_ids) - else: - raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - if len(processingLevel_collections): - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - - params.pop('processingLevel_collections') + if 'collections' not in params: + params['collections'] = [] + + for dataset in params.pop('dataset'): + if collections_by_short_name := dataset_collections.get(dataset): + for concept_ids in collections_by_short_name.values(): + params['collections'].extend(concept_ids) + else: + raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - if 'platform' in params: - params.pop('dataset') - params.pop('dataset') + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + if len(processingLevel_collections): + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + + params.pop('processingLevel_collections') + elif 'platform' in params: if 'collections' not in params: params['collections'] = [] missing = [platform for platform in params['platform'] if collections_per_platform.get(platform.upper()) is None] + # collections limit platform searches, so if there are any we don't have collections for we skip this optimization if len(missing) == 0: for platform in params['platform']: diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index e4d8fb59..4d7844aa 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -321,4 +321,59 @@ tests: "C1216244348-ASF", "C1234413263-ASFDEV" ] + }] + +- test-search-build_subquery UNKNOWN_PROCESSING_TYPE: + params: + processingLevel: ["UNKNOWN_PROCESSING_TYPE"] + # collections: [ + # ] + expected: [{ + # collections: [ + # ] + }] + +- test-search-build_subquery UNKNOWN_PROCESSING_TYPE with collections: + params: + processingLevel: ["UNKNOWN_PROCESSING_TYPE"] + collections: [ #S1 SLC collections + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV", + "C1212001698-ASF" # INTERFEROMETRY + ] + expected: [{ + collections: + [ #S1 SLC collections + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV", + "C1212001698-ASF" # INTERFEROMETRY + ] + }] + +- test-search-build_subquery UNKNOWN_PROCESSING_TYPE with platform, SLC, & collection: + params: + platform: ['SENTINEL-1A', 'SENTINEL-1B', 'UAVSAR'] + processingLevel: ["UNKNOWN_PROCESSING_TYPE", 'SLC'] + collections: [ #S1 SLC collections + "C1212001698-ASF" # INTERFEROMETRY + ] + expected: [{ + collections: + [ #S1 SLC collections + "C1214470488-ASF", + "C1205428742-ASF", + "C1234413245-ASFDEV", + "C1327985661-ASF", + "C1216244348-ASF", + "C1234413263-ASFDEV", + "C1212001698-ASF" # INTERFEROMETRY + ] }] \ No newline at end of file From 1ad1c8f832f31d915614278d1497e23e1c395613 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 16 Nov 2023 15:45:05 -0900 Subject: [PATCH 16/95] cleanup, adds changelog --- CHANGELOG.md | 1 + asf_search/CMR/translate.py | 30 +----------------------------- 2 files changed, 2 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4fc63f24..30d62b2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,7 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### Changed - Constants are no longer top level import, are now accessible through respective modules +- `processingLevel` and `platform` are now aliased by collection concept-ids, (lists of concept ids by their processing levels/platforms viewable in `dataset.py`), improving performance and dodging subquery system ------ ## [v6.7.1](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.0...v6.7.1) diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index af70b2fa..2518bdd3 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -7,9 +7,7 @@ from shapely.geometry import Polygon from shapely.geometry.base import BaseGeometry from .field_map import field_map -from .datasets import dataset_collections, collections_per_platform - -from numpy import intersect1d +from .datasets import dataset_collections import logging @@ -50,32 +48,6 @@ def translate_opts(opts: ASFSearchOptions) -> list: if any(key in dict_opts for key in ['start', 'end', 'season']): dict_opts = fix_date(dict_opts) - # if 'dataset' in dict_opts: - # if 'collections' not in dict_opts: - # dict_opts['collections'] = [] - - # for dataset in dict_opts['dataset']: - # if collections_by_short_name := dataset_collections.get(dataset): - # for concept_ids in collections_by_short_name.values(): - # dict_opts['collections'].extend(concept_ids) - # else: - # raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - - # dict_opts.pop('dataset') - - # if 'platform' in dict_opts: - # if 'collections' not in dict_opts: - # dict_opts['collections'] = [] - - # missing = [platform for platform in dict_opts['platform'] if collections_per_platform.get(platform) is None] - - # # collections limit platform searches, so if there are any we don't have collections for we skip this optimization - # if len(missing) == 0: - # for platform in dict_opts['platform']: - # if (collections := collections_per_platform.get(platform.upper())): - # dict_opts['collections'].extend(collections) - # print(f"optimizing for platform search {dict_opts['platform']}") - # dict_opts.pop('platform') # convert the above parameters to a list of key/value tuples cmr_opts = [] for (key, val) in dict_opts.items(): From 45f520e3306b8ca54d4b349756e6ae903ae3bc91 Mon Sep 17 00:00:00 2001 From: kim Date: Mon, 4 Dec 2023 10:09:09 -0900 Subject: [PATCH 17/95] comments out processingLevel concept-id aliasing (for now) --- asf_search/CMR/subquery.py | 66 +++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 36 deletions(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 3c187ec9..25165196 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -30,19 +30,19 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: params = dict([ (k, v) for k, v in params.items() if k not in skip_param_names ]) # in case all instances of platform and/or processingLevel can be substituded by a concept id - keyword_collection_aliases = [] - if 'processingLevel' in params.keys(): - concept_id_aliases = [] - for processingLevel in params['processingLevel']: - if alias := collections_by_processing_level.get(processingLevel): - concept_id_aliases.extend(alias) - else: - concept_id_aliases = [] - break + # keyword_collection_aliases = [] + # if 'processingLevel' in params.keys(): + # concept_id_aliases = [] + # for processingLevel in params['processingLevel']: + # if alias := collections_by_processing_level.get(processingLevel): + # concept_id_aliases.extend(alias) + # else: + # concept_id_aliases = [] + # break - if len(concept_id_aliases): - params.pop('processingLevel') - params['processingLevel_collections'] = concept_id_aliases + # if len(concept_id_aliases): + # params.pop('processingLevel') + # params['processingLevel_collections'] = concept_id_aliases if 'dataset' in params: if 'collections' not in params: @@ -55,11 +55,11 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: else: raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - if len(processingLevel_collections): - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + # if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + # if len(processingLevel_collections): + # params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - params.pop('processingLevel_collections') + # params.pop('processingLevel_collections') elif 'platform' in params: @@ -74,31 +74,25 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: if (collections := collections_per_platform.get(platform.upper())): params['collections'].extend(collections) - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - if len(processingLevel_collections): - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + # if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + # if len(processingLevel_collections): + # params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - params.pop('processingLevel_collections') + # params.pop('processingLevel_collections') params.pop('platform') - else: - if params.get('collections') is None: - params['collections'] = [] - if params.get('processingLevel_collections') is not None: - params['collections'] = params.get('processingLevel_collections') - else: - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + # else: + # if params.get('collections') is None: + # params['collections'] = [] + # if params.get('processingLevel_collections') is not None: + # params['collections'] = params.get('processingLevel_collections') + # else: + # if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + # params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - if params.get('processingLevel_collections') is not None: - params.pop('processingLevel_collections') - - + # if params.get('processingLevel_collections') is not None: + # params.pop('processingLevel_collections') - - - - subquery_params, list_params = {}, {} for k, v in params.items(): if k in list_param_names: From 6eb8ab402c5817ebf774bb82b757caec883a26d4 Mon Sep 17 00:00:00 2001 From: kim Date: Mon, 4 Dec 2023 16:45:34 -0900 Subject: [PATCH 18/95] adds baseline functionality to other product types --- asf_search/ASFProduct.py | 10 +++-- asf_search/Products/ALOSProduct.py | 22 +++++++---- asf_search/Products/ARIAS1GUNWProduct.py | 5 ++- asf_search/Products/ERSProduct.py | 37 ++++++++++++++++++- asf_search/Products/JERSProduct.py | 37 ++++++++++++++++++- asf_search/Products/OPERAS1Product.py | 10 ++++- asf_search/Products/RadarsatProduct.py | 29 +++++++++++++-- asf_search/Products/S1BURSTProduct.py | 16 ++++++-- asf_search/Products/S1Product.py | 47 +++++++++++++++++------- asf_search/baseline/stack.py | 25 ++++--------- asf_search/search/baseline_search.py | 2 +- asf_search/search/search_generator.py | 2 - 12 files changed, 186 insertions(+), 56 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 8fe5bc44..d5ddeedc 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -143,9 +143,9 @@ def get_stack_opts(self) -> ASFSearchOptions: :return: ASFSearchOptions describing appropriate options for building a stack from this product """ - from .search.baseline_search import get_stack_opts + # from .search.baseline_search import get_stack_opts - return get_stack_opts(reference=self) + return {} def centroid(self) -> Point: """ @@ -212,7 +212,8 @@ def _get_property_paths() -> dict: def get_baseline_calc_properties(self) -> dict: return {} - def get_default_product_type(self): + @staticmethod + def get_default_product_type(): # scene_name = product.properties['sceneName'] # if get_platform(scene_name) in ['AL']: @@ -224,3 +225,6 @@ def get_default_product_type(self): # return 'BURST' # return 'SLC' return None + + def is_valid_reference(self): + return False \ No newline at end of file diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index f4956def..4b1b605b 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -31,17 +31,17 @@ def get_baseline_calc_properties(self) -> dict: return None - def get_stack_opts(self, reference: ASFProduct, + def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = self.get_default_product_type(reference) + stack_opts.processingLevel = ALOSProduct.get_default_product_type() - if reference.properties['insarStackId'] not in [None, 'NA', 0, '0']: - stack_opts.insarStackId = reference.properties['insarStackId'] + if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: + stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {reference.properties["fileID"]}') + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') @staticmethod def _get_property_paths() -> dict: @@ -50,5 +50,13 @@ def _get_property_paths() -> dict: **ALOSProduct.base_properties } - def get_default_product_type(self): - return 'L1.1' \ No newline at end of file + @staticmethod + def get_default_product_type(): + return 'L1.1' + + def is_valid_reference(self): + # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) + if 'insarBaseline' not in self.baseline: + raise ValueError('No baseline values available for precalculated dataset') + + return True \ No newline at end of file diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 47934ba0..4f13d4b6 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -25,5 +25,6 @@ def _get_property_paths() -> dict: **ARIAS1GUNWProduct.base_properties } - def get_default_product_type(self): - return 'BURST' + @staticmethod + def get_default_product_type(): + return None diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 5f97ebd2..cdbec2cd 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,7 +1,8 @@ import copy -from asf_search import ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float from asf_search.constants import PLATFORM +from asf_search.exceptions import ASFBaselineError class ERSProduct(ASFProduct): base_properties = { @@ -20,6 +21,29 @@ class ERSProduct(ASFProduct): def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) + self.baseline = self.get_baseline_calc_properties() + + def get_baseline_calc_properties(self) -> dict: + insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + + if insarBaseline is not None: + return { + 'insarBaseline': insarBaseline + } + + return None + + def get_stack_opts(self, + opts: ASFSearchOptions = None): + + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + stack_opts.processingLevel = ERSProduct.get_default_product_type() + + if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts + + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') @staticmethod def _get_property_paths() -> dict: @@ -27,3 +51,14 @@ def _get_property_paths() -> dict: **ASFProduct._get_property_paths(), **ERSProduct.base_properties } + + @staticmethod + def get_default_product_type(): + return 'L0' + + def is_valid_reference(self): + # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) + if 'insarBaseline' not in self.baseline: + raise ValueError('No baseline values available for precalculated dataset') + + return True \ No newline at end of file diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 54f00e63..d70b6912 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,7 +1,8 @@ import copy -from asf_search import ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int from asf_search.constants import PLATFORM +from asf_search.exceptions import ASFBaselineError class JERSProduct(ASFProduct): base_properties = { @@ -20,6 +21,17 @@ class JERSProduct(ASFProduct): def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) + self.baseline = self.get_baseline_calc_properties() + + def get_baseline_calc_properties(self) -> dict: + insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + + if insarBaseline is not None: + return { + 'insarBaseline': insarBaseline + } + + return None @staticmethod def _get_property_paths() -> dict: @@ -27,3 +39,26 @@ def _get_property_paths() -> dict: **ASFProduct._get_property_paths(), **JERSProduct.base_properties } + + def get_stack_opts(self, + opts: ASFSearchOptions = None): + + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + stack_opts.processingLevel = JERSProduct.get_default_product_type() + + if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts + + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + + @staticmethod + def get_default_product_type(): + return 'L0' + + def is_valid_reference(self): + # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) + if 'insarBaseline' not in self.baseline: + raise ValueError('No baseline values available for precalculated dataset') + + return True \ No newline at end of file diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 966b6d46..ebab10f4 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -54,5 +54,13 @@ def _get_property_paths() -> dict: **OPERAS1Product.base_properties } - def get_default_product_type(self): + @staticmethod + def get_default_product_type(): return 'CSLC' + + def is_valid_reference(self): + # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) + if 'insarBaseline' not in self.baseline: + raise ValueError('No baseline values available for precalculated dataset') + + return True \ No newline at end of file diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 75aa3a99..b247bfa6 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,5 +1,7 @@ -from asf_search import ASFSession, ASFProduct +import copy +from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int +from asf_search.exceptions import ASFBaselineError class RadarsatProduct(ASFProduct): base_properties = { @@ -29,6 +31,18 @@ def get_baseline_calc_properties(self) -> dict: return None + def get_stack_opts(self, + opts: ASFSearchOptions = None): + + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + stack_opts.processingLevel = RadarsatProduct.get_default_product_type() + + if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts + + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + @staticmethod def _get_property_paths() -> dict: return { @@ -36,6 +50,13 @@ def _get_property_paths() -> dict: **RadarsatProduct.base_properties } - def get_default_product_type(self): - # if get_platform(scene_name) in ['R1', 'E1', 'E2', 'J1']: - return 'L0' \ No newline at end of file + @staticmethod + def get_default_product_type(): + return 'L0' + + def is_valid_reference(self): + # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) + if 'insarBaseline' not in self.baseline: + raise ValueError('No baseline values available for precalculated dataset') + + return True \ No newline at end of file diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 2c503a33..d2911c66 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -1,4 +1,5 @@ -from asf_search import ASFSession +import copy +from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product from asf_search.CMR.translate import get, try_parse_int from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast @@ -17,7 +18,7 @@ class S1BURSTProduct(S1Product): def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.properties['sceneName'] = self.properties['fileID'] - self.properties['bytes'] = umm_get(self.umm, ['AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0]) + self.properties['bytes'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0) self.properties['burst'] = { 'absoluteBurstID': self.properties.pop('absoluteBurstID'), 'relativeBurstID': self.properties.pop('relativeBurstID'), @@ -35,6 +36,14 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties['fileName'] = self.properties['fileID'] + '.' + urls[0].split('.')[-1] self.properties['additionalUrls'] = [urls[1]] + def get_stack_opts(self, opts: ASFSearchOptions = None): + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + + stack_opts.processingLevel = S1BURSTProduct.get_default_product_type() + stack_opts.fullBurstID = self.properties['burst']['fullBurstID'] + stack_opts.polarization = [self.properties['polarization']] + return stack_opts + @staticmethod def _get_property_paths() -> dict: return { @@ -42,5 +51,6 @@ def _get_property_paths() -> dict: **S1BURSTProduct.base_properties } - def get_default_product_type(self): + @staticmethod + def get_default_product_type(): return 'BURST' diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index f3caf158..73665cae 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,5 +1,5 @@ import copy -from asf_search import ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int from asf_search.constants import PLATFORM @@ -48,18 +48,29 @@ def get_state_vectors(self) -> dict: 'velocities': velocities } - def get_stack_opts(self): + def get_stack_opts(self, + opts: ASFSearchOptions = None): - # stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - return { - 'processingLevel': 'SLC', - 'beamMode': [self.properties['beamModeType']], - 'flightDirection': self.properties['flightDirection'], - 'relativeOrbit': [int(self.properties['pathNumber'])], # path - 'platform': [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B], - 'polarization': ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'], - 'intersectsWith': self.centroid().wkt - } + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + + stack_opts.processingLevel = S1Product.get_default_product_type() + stack_opts.beamMode = [self.properties['beamModeType']] + stack_opts.flightDirection = self.properties['flightDirection'] + stack_opts.relativeOrbit = [int(self.properties['pathNumber'])], # path + stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] + stack_opts.polarization = ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'] + stack_opts.intersectsWith = self.centroid().wkt + + return stack_opts + # return { + # 'processingLevel': 'SLC', + # 'beamMode': [self.properties['beamModeType']], + # 'flightDirection': self.properties['flightDirection'], + # 'relativeOrbit': [int(self.properties['pathNumber'])], # path + # 'platform': [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B], + # 'polarization': ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'], + # 'intersectsWith': self.centroid().wkt + # } # if reference.properties['processingLevel'] == 'BURST': # stack_opts.processingLevel = 'BURST' # else: @@ -93,5 +104,15 @@ def _get_property_paths() -> dict: **S1Product.base_properties } - def get_default_product_type(self): + @staticmethod + def get_default_product_type(): return 'SLC' + + def is_valid_reference(self): + return self.valid_state_vectors() + + def valid_state_vectors(self): + for key in ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime']: + if key not in self.baseline['stateVectors']['positions'] or self.baseline['stateVectors']['positions'][key] == None: + return False + return True \ No newline at end of file diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 638917ee..ad3f8dac 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -22,17 +22,9 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): return ASFSearchResults(stack), warnings -def valid_state_vectors(product: ASFProduct): - if product is None: - raise ValueError('Attempting to check state vectors on None, this is fatal') - for key in ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime']: - if key not in product.baseline['stateVectors']['positions'] or product.baseline['stateVectors']['positions'][key] == None: - return False - return True - def find_new_reference(stack: ASFSearchResults): for product in stack: - if valid_state_vectors(product): + if product.is_valid_reference(): return product return None @@ -42,15 +34,12 @@ def check_reference(reference: ASFProduct, stack: ASFSearchResults): reference = stack[0] warnings = [{'NEW_REFERENCE': 'A new reference scene had to be selected in order to calculate baseline values.'}] - if get_platform(reference.properties['sceneName']) in precalc_datasets: - if 'insarBaseline' not in reference.baseline: - raise ValueError('No baseline values available for precalculated dataset') - else: - if not valid_state_vectors(reference): # the reference might be missing state vectors, pick a valid reference, replace above warning if it also happened - reference = find_new_reference(stack) - if reference == None: - raise ValueError('No valid state vectors on any scenes in stack, this is fatal') - warnings = [{'NEW_REFERENCE': 'A new reference had to be selected in order to calculate baseline values.'}] + # non-s1 is_valid_reference raise an error, while we try to find a valid s1 reference + # do we want this behaviour for pre-calc stacks? + if not reference.is_valid_reference(): + reference = find_new_reference(stack) + if reference == None: + raise ValueError('No valid state vectors on any scenes in stack, this is fatal') return reference, stack, warnings diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index fda69709..3c77b059 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -33,7 +33,7 @@ def stack_from_product( opts = (ASFSearchOptions() if opts is None else copy(opts)) - opts.merge_args(**reference.get_stack_opts()) + opts.merge_args(**dict(reference.get_stack_opts())) stack = search(opts=opts) is_complete = stack.searchComplete diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 0a6244b4..77352320 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -260,8 +260,6 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: 'OPERA-S1': ASFProductType.OPERAS1Product, 'SLC-BURST': ASFProductType.S1BURSTProduct, 'ALOS': ASFProductType.ALOSProduct, - # 'ALOS PALSAR': ASFProductType.ALOSProduct, - # 'ALOS AVNIR-2': ASFProductType.ALOSProduct, 'SIR-C': ASFProductType.SIRCProduct, 'ARIA S1 GUNW': ASFProductType.ARIAS1GUNWProduct, 'SMAP': ASFProductType.SMAPProduct, From fd09d18719321ec745848d57a01a52b7c5ca56f7 Mon Sep 17 00:00:00 2001 From: kim Date: Mon, 4 Dec 2023 16:52:01 -0900 Subject: [PATCH 19/95] update test_stack import --- tests/BaselineSearch/Stack/test_stack.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index 528c5181..63964911 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -1,6 +1,6 @@ from typing import List from numbers import Number -from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack, get_default_product_type, valid_state_vectors +from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack, get_default_product_type from asf_search import ASFProduct, ASFSearchResults import pytest def run_test_find_new_reference(stack: List, output_index: Number) -> None: @@ -49,11 +49,11 @@ def run_test_valid_state_vectors(reference, output): if reference != None: product = ASFProduct(reference) clear_baseline(reference, product) - assert output == valid_state_vectors(product) + assert output == product.valid_state_vectors() return with pytest.raises(ValueError): - valid_state_vectors(reference) + reference.valid_state_vectors() def clear_baseline(resource, product: ASFProduct): # Baseline values can be restored from UMM in asfProduct constructor, From af19ea9d92f2ff8347309fb534c6999bded59d29 Mon Sep 17 00:00:00 2001 From: kim Date: Mon, 4 Dec 2023 16:59:47 -0900 Subject: [PATCH 20/95] update test case --- tests/BaselineSearch/Stack/test_stack.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index 63964911..13b1f5db 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -58,8 +58,8 @@ def run_test_valid_state_vectors(reference, output): def clear_baseline(resource, product: ASFProduct): # Baseline values can be restored from UMM in asfProduct constructor, # this erases them again if the resource omitted them from the product - if resource['baseline'].get('stateVectors', False).get('positions', False) == {}: - product.baseline['stateVectors']['positions'] = {} - product.baseline['stateVectors']['velocities'] = {} + if (stateVectors:=resource['baseline'].get('stateVectors')): + if stateVectors.get('positions') == {}: + product.baseline['stateVectors'] = {'positions': {}, 'velocities': {}} return product From 751d19a8b41eab365b26935ea3600198e61dae98 Mon Sep 17 00:00:00 2001 From: kim Date: Mon, 4 Dec 2023 17:05:16 -0900 Subject: [PATCH 21/95] another test case update, asfproduct cleanup, s1product cleanup --- asf_search/ASFProduct.py | 25 +----------------------- asf_search/Products/S1Product.py | 12 ++++++------ tests/BaselineSearch/Stack/test_stack.py | 2 +- 3 files changed, 8 insertions(+), 31 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index d5ddeedc..ba7b4bcd 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -9,18 +9,12 @@ from asf_search import ASFSession, ASFSearchResults from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.download import download_url -# from asf_search.CMR import translate_product from remotezip import RemoteZip from asf_search.download.file_download_type import FileDownloadType from asf_search import ASF_LOGGER -from asf_search.CMR.translate import cast, try_parse_float, try_parse_int, try_round_float, get_state_vector +from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.CMR.translate import get as umm_get -# Myabe just these keys???? -#start and stop time (maybe) -# - fileID -# - platform -# - geoemetry class ASFProduct: @@ -143,8 +137,6 @@ def get_stack_opts(self) -> ASFSearchOptions: :return: ASFSearchOptions describing appropriate options for building a stack from this product """ - # from .search.baseline_search import get_stack_opts - return {} def centroid(self) -> Point: @@ -185,11 +177,6 @@ def translate_product(self, item: dict) -> dict: for prop, umm_entry in self._get_property_paths().items() } - # for key, cast_type in umm_property_typecasting.items(): - # if properties.get(key) is not None: - # properties[key] = cast(cast_type, properties.get(key)) - - if properties.get('url') is not None: properties['fileName'] = properties['url'].split('/')[-1] else: @@ -214,16 +201,6 @@ def get_baseline_calc_properties(self) -> dict: @staticmethod def get_default_product_type(): - # scene_name = product.properties['sceneName'] - - # if get_platform(scene_name) in ['AL']: - # return 'L1.1' - # if get_platform(scene_name) in ['R1', 'E1', 'E2', 'J1']: - # return 'L0' - # if get_platform(scene_name) in ['S1']: - # if product.properties['processingLevel'] == 'BURST': - # return 'BURST' - # return 'SLC' return None def is_valid_reference(self): diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 73665cae..058a1ad4 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -54,12 +54,12 @@ def get_stack_opts(self, stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = S1Product.get_default_product_type() - stack_opts.beamMode = [self.properties['beamModeType']] - stack_opts.flightDirection = self.properties['flightDirection'] - stack_opts.relativeOrbit = [int(self.properties['pathNumber'])], # path - stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] - stack_opts.polarization = ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'] - stack_opts.intersectsWith = self.centroid().wkt + stack_opts.beamMode = [self.properties['beamModeType']] + stack_opts.flightDirection = self.properties['flightDirection'] + stack_opts.relativeOrbit = [int(self.properties['pathNumber'])], # path + stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] + stack_opts.polarization = ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'] + stack_opts.intersectsWith = self.centroid().wkt return stack_opts # return { diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index 13b1f5db..ec7ff198 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -60,6 +60,6 @@ def clear_baseline(resource, product: ASFProduct): # this erases them again if the resource omitted them from the product if (stateVectors:=resource['baseline'].get('stateVectors')): if stateVectors.get('positions') == {}: - product.baseline['stateVectors'] = {'positions': {}, 'velocities': {}} + product.baseline = {'stateVectors': {'positions': {}, 'velocities': {}}} return product From b8ce44b69a16dcee941648711691aad09e14a5be Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 5 Dec 2023 09:54:59 -0900 Subject: [PATCH 22/95] updates more test cases, fixes typo in s1product stacking logic --- asf_search/ASFProduct.py | 1 - asf_search/Products/S1Product.py | 2 +- tests/ASFProduct/test_ASFProduct.py | 15 ++++++++------- tests/BaselineSearch/Stack/test_stack.py | 12 +++++++----- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index ba7b4bcd..01303496 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,6 +1,5 @@ import os import warnings -from typing import List from shapely.geometry import shape, Point, Polygon, mapping import json diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 058a1ad4..d48ab6d6 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -56,7 +56,7 @@ def get_stack_opts(self, stack_opts.processingLevel = S1Product.get_default_product_type() stack_opts.beamMode = [self.properties['beamModeType']] stack_opts.flightDirection = self.properties['flightDirection'] - stack_opts.relativeOrbit = [int(self.properties['pathNumber'])], # path + stack_opts.relativeOrbit = [int(self.properties['pathNumber'])] # path stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] stack_opts.polarization = ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'] stack_opts.intersectsWith = self.centroid().wkt diff --git a/tests/ASFProduct/test_ASFProduct.py b/tests/ASFProduct/test_ASFProduct.py index 22102d9c..3cdcafc8 100644 --- a/tests/ASFProduct/test_ASFProduct.py +++ b/tests/ASFProduct/test_ASFProduct.py @@ -2,13 +2,15 @@ import pytest import unittest -from asf_search import ASFProduct, ASFSearchResults, ASFSearchOptions, FileDownloadType +from asf_search import ASFProduct, ASFSearchResults, ASFSearchOptions, ASFSession, FileDownloadType from unittest.mock import patch from shapely.geometry import shape from shapely.ops import orient import requests +from asf_search.search.search_generator import as_ASFProduct + def run_test_ASFProduct(product_json): if product_json is None: product = ASFProduct() @@ -20,8 +22,7 @@ def run_test_ASFProduct(product_json): return - opts = product_json.pop('opts', None) - product = ASFProduct(product_json, opts) + product = as_ASFProduct(product_json, ASFSession()) geojson = product.geojson() @@ -37,10 +38,10 @@ def run_test_ASFProduct(product_json): assert(product.meta == product_json["meta"]) def run_test_stack(reference, pre_processed_stack, processed_stack): - product = ASFProduct(reference) + product = as_ASFProduct(reference, ASFSession()) with patch('asf_search.baseline_search.search') as search_mock: - temp = ASFSearchResults([ASFProduct(prod) for prod in pre_processed_stack]) + temp = ASFSearchResults([as_ASFProduct(prod, ASFSession()) for prod in pre_processed_stack]) for idx, prod in enumerate(temp): prod.baseline = pre_processed_stack[idx]['baseline'] search_mock.return_value = temp @@ -60,14 +61,14 @@ def run_test_stack(reference, pre_processed_stack, processed_stack): assert(secondary.properties['perpendicularBaseline'] == processed_stack[idx]['properties']['perpendicularBaseline']) def run_test_product_get_stack_options(reference, options): - product = ASFProduct(reference) + product = as_ASFProduct(reference, ASFSession()) expected_options = dict(ASFSearchOptions(**options)) product_options = dict(product.get_stack_opts()) assert product_options == dict(expected_options) def run_test_ASFProduct_download(reference, filename, filetype, additional_urls): - product = ASFProduct(reference) + product = as_ASFProduct(reference, ASFSession()) product.properties['additionalUrls'] = additional_urls with patch('asf_search.ASFSession.get') as mock_get: resp = requests.Response() diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index ec7ff198..a0ce20df 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -1,7 +1,9 @@ from typing import List from numbers import Number from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack, get_default_product_type -from asf_search import ASFProduct, ASFSearchResults +from asf_search import ASFProduct, ASFSearchResults, ASFSession +from asf_search.search.search_generator import as_ASFProduct + import pytest def run_test_find_new_reference(stack: List, output_index: Number) -> None: """ @@ -11,7 +13,7 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: if stack == []: assert(find_new_reference(stack) == None) else: - products = [ASFProduct(product) for product in stack] + products = [as_ASFProduct(product, ASFSession()) for product in stack] for idx, product in enumerate(products): product = clear_baseline(stack[idx], product) assert find_new_reference(products).properties['sceneName'] == stack[output_index]['properties']['sceneName'] @@ -20,8 +22,8 @@ def run_test_get_default_product_type(product: ASFProduct, product_type: str) -> assert get_default_product_type(product) == product_type def run_test_get_baseline_from_stack(reference, stack, output_stack, error): - reference = ASFProduct(reference) - stack = ASFSearchResults([ASFProduct(product) for product in stack]) + reference = as_ASFProduct(reference, ASFSession()) + stack = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in stack]) if error == None: stack, warnings = get_baseline_from_stack(reference, stack) @@ -47,7 +49,7 @@ def run_test_get_baseline_from_stack(reference, stack, output_stack, error): def run_test_valid_state_vectors(reference, output): if reference != None: - product = ASFProduct(reference) + product = as_ASFProduct(reference, ASFSession()) clear_baseline(reference, product) assert output == product.valid_state_vectors() return From 5bc8751be0b1a7badcadc22d904929876f2a2932 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 5 Dec 2023 17:16:52 -0900 Subject: [PATCH 23/95] updates a lot of test cases, adds some product type specific fields --- asf_search/ASFProduct.py | 1 + asf_search/Products/ALOSProduct.py | 8 +- asf_search/Products/ERSProduct.py | 3 +- asf_search/Products/OPERAS1Product.py | 26 +- asf_search/export/csv.py | 64 +- asf_search/export/jsonlite.py | 60 +- asf_search/export/metalink.py | 2 +- asf_search/search/search_generator.py | 1 + tests/BaselineSearch/test_baseline_search.py | 37 +- tests/pytest-config.yml | 6 - tests/pytest-managers.py | 18 +- tests/yml_tests/Resources/Fairbanks_L1.yml | 630 +- tests/yml_tests/Resources/SLC_BURST.yml | 430 +- tests/yml_tests/Resources/SLC_BURST_stack.yml | 47012 +++++++++++++++- tests/yml_tests/test_baseline_search.yml | 3 - 15 files changed, 47404 insertions(+), 897 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 01303496..4e8ae091 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -34,6 +34,7 @@ class ASFProduct: 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'platform': {'path': [ 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 4b1b605b..33f13269 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -15,11 +15,15 @@ class ALOSProduct(ASFProduct): 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, + 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() + + if self.properties.get('groupID') is None: + self.properties['groupID'] = self.properties['sceneName'] def get_baseline_calc_properties(self) -> dict: insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) @@ -28,9 +32,7 @@ def get_baseline_calc_properties(self) -> dict: return { 'insarBaseline': insarBaseline } - - return None - + def get_stack_opts(self, opts: ASFSearchOptions = None): diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index cdbec2cd..aacdb96a 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -8,7 +8,7 @@ class ERSProduct(ASFProduct): base_properties = { 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, @@ -17,6 +17,7 @@ class ERSProduct(ASFProduct): 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, + 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index ebab10f4..78db94a3 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -9,15 +9,14 @@ class OPERAS1Product(S1Product): 'centerLon': {'path': []}, 'frameNumber': {'path': []}, 'operaBurstID': {'path': ['AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0]}, - 'bytes': {'path': ['DataGranule', 'ArchiveAndDistributionInformation']} + 'validityStartDate': {'path': ['TemporalExtent', 'SingleDateTime']}, + 'bytes': {'path': ['DataGranule', 'ArchiveAndDistributionInformation']}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) - baseline = self.get_baseline_calc_properties() - if None not in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: - self.baseline = baseline + self.baseline = None self.properties['beamMode'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) accessUrls = [*umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] @@ -34,18 +33,9 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties.pop('centerLat') self.properties.pop('centerLon') self.properties.pop('frameNumber') - def get_stack_opts(self): - # stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - return { - 'processingLevel': 'SLC', - 'beamMode': [self.properties['beamModeType']], - 'flightDirection': self.properties['flightDirection'], - 'relativeOrbit': [int(self.properties['pathNumber'])], # path - 'platform': [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B], - 'polarization': ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'], - 'intersectsWith': self.centroid().wkt - } + def get_stack_opts(self): + return {} @staticmethod def _get_property_paths() -> dict: @@ -59,8 +49,4 @@ def get_default_product_type(): return 'CSLC' def is_valid_reference(self): - # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) - if 'insarBaseline' not in self.baseline: - raise ValueError('No baseline values available for precalculated dataset') - - return True \ No newline at end of file + return False \ No newline at end of file diff --git a/asf_search/export/csv.py b/asf_search/export/csv.py index 32a1fb8b..c7283cc1 100644 --- a/asf_search/export/csv.py +++ b/asf_search/export/csv.py @@ -117,38 +117,38 @@ def streamRows(self): def getItem(self, p): return { - "Granule Name":p['sceneName'], - "Platform":p['platform'], - "Sensor":p['sensor'], - "Beam Mode":p['beamModeType'], - "Beam Mode Description":p['configurationName'], - "Orbit":p['orbit'], - "Path Number":p['pathNumber'], - "Frame Number":p['frameNumber'], - "Acquisition Date":p['sceneDate'], - "Processing Date":p['processingDate'], - "Processing Level":p['processingLevel'], - "Start Time":p['startTime'], - "End Time":p['stopTime'], - "Center Lat":p['centerLat'], - "Center Lon":p['centerLon'], - "Near Start Lat":p['nearStartLat'], - "Near Start Lon":p['nearStartLon'], - "Far Start Lat":p['farStartLat'], - "Far Start Lon":p['farStartLon'], - "Near End Lat":p['nearEndLat'], - "Near End Lon":p['nearEndLon'], - "Far End Lat":p['farEndLat'], - "Far End Lon":p['farEndLon'], - "Faraday Rotation":p['faradayRotation'], - "Ascending or Descending?":p['flightDirection'], - "URL":p['url'], - "Size (MB)":p['sizeMB'], - "Off Nadir Angle":p['offNadirAngle'], - "Stack Size":p['insarStackSize'], - "Doppler":p['doppler'], - "GroupID":p['groupID'], - "Pointing Angle":p['pointingAngle'], + "Granule Name":p.get('sceneName'), + "Platform":p.get('platform'), + "Sensor":p.get('sensor'), + "Beam Mode":p.get('beamModeType'), + "Beam Mode Description":p.get('configurationName'), + "Orbit":p.get('orbit'), + "Path Number":p.get('pathNumber'), + "Frame Number":p.get('frameNumber'), + "Acquisition Date":p.get('sceneDate'), + "Processing Date":p.get('processingDate'), + "Processing Level":p.get('processingLevel'), + "Start Time":p.get('startTime'), + "End Time":p.get('stopTime'), + "Center Lat":p.get('centerLat'), + "Center Lon":p.get('centerLon'), + "Near Start Lat":p.get('nearStartLat'), + "Near Start Lon":p.get('nearStartLon'), + "Far Start Lat":p.get('farStartLat'), + "Far Start Lon":p.get('farStartLon'), + "Near End Lat":p.get('nearEndLat'), + "Near End Lon":p.get('nearEndLon'), + "Far End Lat":p.get('farEndLat'), + "Far End Lon":p.get('farEndLon'), + "Faraday Rotation":p.get('faradayRotation'), + "Ascending or Descending?":p.get('flightDirection'), + "URL":p.get('url'), + "Size (MB)":p.get('sizeMB'), + "Off Nadir Angle":p.get('offNadirAngle'), + "Stack Size":p.get('insarStackSize'), + "Doppler":p.get('doppler'), + "GroupID":p.get('groupID'), + "Pointing Angle":p.get('pointingAngle'), "TemporalBaseline":p.get('teporalBaseline'), "PerpendicularBaseline":p.get('pependicularBaseline'), "relativeBurstID": p['burst']['relativeBurstID'] if p['processingLevel'] == 'BURST' else None, diff --git a/asf_search/export/jsonlite.py b/asf_search/export/jsonlite.py index 3f16540f..33583bcc 100644 --- a/asf_search/export/jsonlite.py +++ b/asf_search/export/jsonlite.py @@ -101,19 +101,21 @@ def getItem(self, p): if p[i] == 'NA' or p[i] == '': p[i] = None try: - if float(p['offNadirAngle']) < 0: - p['offNadirAngle'] = None + if p.get('offNadirAngle'): + if float(p['offNadirAngle']) < 0: + p['offNadirAngle'] = None except TypeError: pass try: - if float(p['pathNumber']) < 0: - p['pathNumber'] = None + if p.get('patNumber'): + if float(p['pathNumber']) < 0: + p['pathNumber'] = None except TypeError: pass try: - if p['groupID'] is None: + if p.get('groupID') is None: p['groupID'] = p['sceneName'] except TypeError: pass @@ -142,34 +144,34 @@ def getItem(self, p): result = { 'beamMode': p['beamModeType'], 'browse': [] if p.get('browse') is None else p.get('browse'), - 'canInSAR': p['canInsar'], - 'dataset': p['platform'], - 'downloadUrl': p['url'], - 'faradayRotation': p['faradayRotation'], # ALOS - 'fileName': p['fileName'], - 'flightDirection': p['flightDirection'], - 'flightLine': p['flightLine'], - 'frame': p['frameNumber'], - 'granuleName': p['sceneName'], - 'groupID': p['groupID'], - 'instrument': p['sensor'], - 'missionName': p['missionName'], - 'offNadirAngle': str(p['offNadirAngle']) if p['offNadirAngle'] is not None else None, # ALOS + 'canInSAR': p.get('canInsar'), + 'dataset': p.get('platform'), + 'downloadUrl': p.get('url'), + 'faradayRotation': p.get('faradayRotation'), # ALOS + 'fileName': p.get('fileName'), + 'flightDirection': p.get('flightDirection'), + 'flightLine': p.get('flightLine'), + 'frame': p.get('frameNumber'), + 'granuleName': p.get('sceneName'), + 'groupID': p.get('groupID'), + 'instrument': p.get('sensor'), + 'missionName': p.get('missionName'), + 'offNadirAngle': str(p['offNadirAngle']) if p.get('offNadirAngle') is not None else None, # ALOS 'orbit': [str(p['orbit'])], - 'path': p['pathNumber'], - 'polarization': p['polarization'], - 'pointingAngle': p['pointingAngle'], - 'productID': p['fileID'], - 'productType': p['processingLevel'], - 'productTypeDisplay': p['processingTypeDisplay'], - 'sizeMB': p['sizeMB'], + 'path': p.get('pathNumber'), + 'polarization': p.get('polarization'), + 'pointingAngle': p.get('pointingAngle'), + 'productID': p.get('fileID'), + 'productType': p.get('processingLevel'), + 'productTypeDisplay': p.get('processingTypeDisplay'), + 'sizeMB': p.get('sizeMB'), 'stackSize': p.get('insarStackSize'), # Used for datasets with precalculated stacks - 'startTime': p['startTime'], - 'stopTime': p['stopTime'], - 'thumb': p['thumb'], + 'startTime': p.get('startTime'), + 'stopTime': p.get('stopTime'), + 'thumb': p.get('thumb'), 'wkt': wrapped, 'wkt_unwrapped': unwrapped, - 'pgeVersion': p['pgeVersion'] + 'pgeVersion': p.get('pgeVersion') } for key in result.keys(): diff --git a/asf_search/export/metalink.py b/asf_search/export/metalink.py index 444bc0b6..15c1736d 100644 --- a/asf_search/export/metalink.py +++ b/asf_search/export/metalink.py @@ -64,7 +64,7 @@ def getItem(self, p): resources.append(url) file.append(resources) - if p['md5sum'] and p['md5sum'] != 'NA': + if p.get('md5sum') and p.get('md5sum') != 'NA': verification = ETree.Element('verification') h = ETree.Element('hash', {'type': 'md5'}) h.text = p['md5sum'] diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 77352320..d6de9610 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -267,6 +267,7 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: 'RADARSAT-1': ASFProductType.RadarsatProduct, 'ERS': ASFProductType.ERSProduct, + 'ERS-1': ASFProductType.ERSProduct, 'ERS-2': ASFProductType.ERSProduct, 'JERS-1': ASFProductType.JERSProduct, diff --git a/tests/BaselineSearch/test_baseline_search.py b/tests/BaselineSearch/test_baseline_search.py index 521ab252..3bc1ed9b 100644 --- a/tests/BaselineSearch/test_baseline_search.py +++ b/tests/BaselineSearch/test_baseline_search.py @@ -2,14 +2,16 @@ from unittest.mock import patch from asf_search.exceptions import ASFBaselineError, ASFSearchError from asf_search.ASFSearchResults import ASFSearchResults -from asf_search import ASFProduct +from asf_search import ASFSession from asf_search.search.baseline_search import get_stack_opts, stack_from_id, stack_from_product from asf_search.baseline.stack import calculate_temporal_baselines, get_default_product_type import pytest +from asf_search.search.search_generator import as_ASFProduct + def run_test_get_preprocessed_stack_params(product): - reference = ASFProduct(product) - params = get_stack_opts(reference) + reference = as_ASFProduct(product, ASFSession()) + params = reference.get_stack_opts() original_properties = product['properties'] @@ -19,8 +21,8 @@ def run_test_get_preprocessed_stack_params(product): def run_test_get_unprocessed_stack_params(product): - reference = ASFProduct(product) - params = get_stack_opts(reference) + reference = as_ASFProduct(product, ASFSession()) + params = reference.get_stack_opts() original_properties = product['properties'] assert(original_properties['polarization'] in params.polarization) @@ -33,23 +35,16 @@ def run_test_get_unprocessed_stack_params(product): assert(len(dict(params)) == 7) def run_get_stack_opts_invalid_insarStackId(product): - invalid_reference = ASFProduct(product) + invalid_reference = as_ASFProduct(product, ASFSession()) invalid_reference.properties['insarStackId'] = '0' with pytest.raises(ASFBaselineError): - get_stack_opts(invalid_reference) - -def run_test_get_stack_opts_invalid_platform_raises_error(product): - invalid_reference = ASFProduct(product) - invalid_reference.properties['platform'] = 'FAKE_PLATFORM' - - with pytest.raises(ASFBaselineError): - get_stack_opts(invalid_reference) - + invalid_reference.get_stack_opts() + def run_test_calc_temporal_baselines(reference, stack): - reference = ASFProduct(reference) - stack = ASFSearchResults([ASFProduct(product) for product in stack]) + reference = as_ASFProduct(reference, ASFSession()) + stack = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in stack]) stackLength = len(stack) calculate_temporal_baselines(reference, stack) @@ -59,10 +54,10 @@ def run_test_calc_temporal_baselines(reference, stack): assert('temporalBaseline' in secondary.properties) def run_test_stack_from_product(reference, stack): - reference = ASFProduct(reference) + reference = as_ASFProduct(reference, ASFSession()) with patch('asf_search.baseline_search.search') as search_mock: - search_mock.return_value = ASFSearchResults([ASFProduct(product) for product in stack]) + search_mock.return_value = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in stack]) stack = stack_from_product(reference) @@ -74,14 +69,14 @@ def run_test_stack_from_id(stack_id: str, reference, stack): temp = deepcopy(stack) with patch('asf_search.baseline_search.product_search') as mock_product_search: - mock_product_search.return_value = ASFSearchResults([ASFProduct(product) for product in stack]) + mock_product_search.return_value = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in stack]) if not stack_id: with pytest.raises(ASFSearchError): stack_from_id(stack_id) else: with patch('asf_search.baseline_search.search') as search_mock: - search_mock.return_value = ASFSearchResults([ASFProduct(product) for product in temp]) + search_mock.return_value = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in temp]) returned_stack = stack_from_id(stack_id) assert(len(returned_stack) == len(stack)) diff --git a/tests/pytest-config.yml b/tests/pytest-config.yml index 285b9fe3..e29004db 100644 --- a/tests/pytest-config.yml +++ b/tests/pytest-config.yml @@ -55,12 +55,6 @@ test_types: required_in_title: test-invalid-insarStackID method: test_get_stack_opts_invalid_insarStackId -- For running Invalid Platform stack params tests: - required_keys: product - required_in_title: test-invalid-platform - method: test_get_stack_opts_invalid_platform - - - For running Invalid Platform stack params tests: required_keys: ["product", "stack"] required_in_title: test-temporal-baseline diff --git a/tests/pytest-managers.py b/tests/pytest-managers.py index 438b1520..edec4390 100644 --- a/tests/pytest-managers.py +++ b/tests/pytest-managers.py @@ -1,5 +1,5 @@ from typing import Dict, List -from asf_search import ASFSearchOptions, ASFProduct, FileDownloadType +from asf_search import ASFSearchOptions, ASFSession, FileDownloadType from asf_search.exceptions import ASFAuthenticationError from ASFProduct.test_ASFProduct import run_test_ASFProduct, run_test_ASFProduct_download, run_test_product_get_stack_options, run_test_stack @@ -22,6 +22,7 @@ from WKT.test_validate_wkt import run_test_search_wkt_prep, run_test_validate_wkt_get_shape_coords, run_test_validate_wkt_clamp_geometry, run_test_validate_wkt_valid_wkt, run_test_validate_wkt_convex_hull, run_test_validate_wkt_counter_clockwise_reorientation, run_test_validate_wkt_invalid_wkt_error, run_test_validate_wkt_merge_overlapping_geometry, run_test_simplify_aoi from ASFSearchOptions.test_ASFSearchOptions import run_test_ASFSearchOptions_validator, run_test_validator_map_validate from BaselineSearch.Stack.test_stack import run_test_find_new_reference, run_test_get_baseline_from_stack, run_test_get_default_product_type, run_test_valid_state_vectors +from asf_search.search.search_generator import as_ASFProduct from download.test_download import run_test_download_url, run_test_download_url_auth_error from Serialization.test_serialization import run_test_serialization @@ -153,16 +154,7 @@ def test_get_stack_opts_invalid_insarStackId(**args) -> None: reference = get_resource(test_info["product"]) run_get_stack_opts_invalid_insarStackId(reference) - -def test_get_stack_opts_invalid_platform(**args) -> None: - """ - Test asf_search.search.baseline_search.get_stack_opts with a the reference scene's - platform set to an invalid value, and asserting an ASFBaselineError is raised - """ - test_info = args["test_info"] - reference = get_resource(test_info["product"]) - run_test_get_stack_opts_invalid_platform_raises_error(reference) - + def test_temporal_baseline(**args) -> None: """ Test asf_search.search.baseline_search.calc_temporal_baselines, asserting mutated baseline stack @@ -372,7 +364,7 @@ def test_get_default_product_type(**args) -> None: product = get_resource(test_info["product"]) product_type = get_resource(test_info["product_type"]) - product = ASFProduct(args={'meta': product['meta'], 'umm': product['umm']}) + product = as_ASFProduct({'meta': product['meta'], 'umm': product['umm']}, ASFSession()) if product.properties.get('sceneName') is None: product.properties['sceneName'] = 'BAD_SCENE' @@ -465,7 +457,7 @@ def test_output_format(**args) -> None: products = get_resource(test_info['results']) if not isinstance(products, List): products = [products] - results = ASFSearchResults([ASFProduct(args={'meta': product['meta'], 'umm': product['umm']}) for product in products]) + results = ASFSearchResults([as_ASFProduct({'meta': product['meta'], 'umm': product['umm']}, ASFSession()) for product in products]) run_test_output_format(results) diff --git a/tests/yml_tests/Resources/Fairbanks_L1.yml b/tests/yml_tests/Resources/Fairbanks_L1.yml index 82e10f45..89783354 100644 --- a/tests/yml_tests/Resources/Fairbanks_L1.yml +++ b/tests/yml_tests/Resources/Fairbanks_L1.yml @@ -1,413 +1,243 @@ { "type": "Feature", - "geometry": { - "coordinates": [ - [ + "properties": + { + "beamModeType": "STD", + "browse": [ - -148.460235, - 65.57549 + "https://datapool.asf.alaska.edu/BROWSE/E1/E1_19942_STD_F287.jpg", ], + "bytes": 58750445, + "centerLat": 64.9813, + "centerLon": -147.7602, + "faradayRotation": None, + "fileID": "E1_19942_STD_F287-L1", + "flightDirection": "DESCENDING", + "groupID": None, + "granuleType": "E1_STD_FRAME", + "insarStackId": "1736495", + "md5sum": "612958259af2fa499cd10a12d9e8c9a4", + "offNadirAngle": -1.0, + "orbit": 19942, + "pathNumber": 415, + "platform": "ERS-1", + "pointingAngle": None, + "polarization": "VV", + "processingDate": "2010-12-05T11:21:45.000Z", + "processingLevel": "L1", + "sceneName": "E1_19942_STD_F287", + "sensor": "SAR", + "startTime": "1995-05-08T21:09:19.000Z", + "stopTime": "1995-05-08T21:09:36.000Z", + "url": "https://datapool.asf.alaska.edu/L1/E1/E1_19942_STD_F287.zip", + "pgeVersion": None, + "fileName": "E1_19942_STD_F287.zip", + "frameNumber": 287, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1213363105-ASF", + "revision-id": 1, + "native-id": "E1_19942_STD_F287-L1", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-13T18:39:18.230Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1995-05-08T21:09:19.000Z", + "EndingDateTime": "1995-05-08T21:09:36.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19942 }], + "GranuleUR": "E1_19942_STD_F287-L1", + "AdditionalAttributes": [ - -149.081122, - 64.627404 + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["612958259af2fa499cd10a12d9e8c9a4"], + }, + { "Name": "GRANULE_TYPE", "Values": ["E1_STD_FRAME"] }, + { + "Name": "ASCENDING_DESCENDING", + "Values": ["DESCENDING"], + }, + { "Name": "FAR_END_LAT", "Values": ["64.6274"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["139"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["0"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2291"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2291"] }, + { + "Name": "ACQUISITION_DATE", + "Values": ["1995-05-08T21:09:36Z"], + }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-147.7602"] }, + { "Name": "NEAR_START_LAT", "Values": ["65.3242"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR", + ], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L1"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Fully processed SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["287"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { + "Name": "PROCESSING_DATE", + "Values": ["2010-12-05 11:21:45.673251"], + }, + { "Name": "NEAR_START_LON", "Values": ["-146.4032"] }, + { "Name": "DOPPLER", "Values": ["0"] }, + { "Name": "FAR_START_LAT", "Values": ["65.5755"] }, + { "Name": "NEAR_END_LON", "Values": ["-147.0941"] }, + { + "Name": "PROCESSING_TYPE_DISPLAY", + "Values": ["Level One Image"], + }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "FAR_START_LON", "Values": ["-148.4602"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/E1/E1_19942_STD_F287_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["ERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["1736495"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["415"] }, + { "Name": "NEAR_END_LAT", "Values": ["64.3827"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-149.0811"] }, + { "Name": "BYTES", "Values": ["58750445"] }, + { "Name": "CENTER_LAT", "Values": ["64.9813"] }, ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -148.460235, + "Latitude": 65.57549, + }, + { + "Longitude": -149.081122, + "Latitude": 64.627404, + }, + { + "Longitude": -147.094104, + "Latitude": 64.38274, + }, + { + "Longitude": -146.403205, + "Latitude": 65.324152, + }, + { + "Longitude": -148.460235, + "Latitude": 65.57549, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": [ - -147.094104, - 64.38274 + { "Date": "2010-12-05T11:21:45.000Z", "Type": "Insert" }, + { "Date": "2010-12-05T11:21:45.000Z", "Type": "Update" }, ], + "CollectionReference": { "EntryTitle": "ERS-1_LEVEL1" }, + "RelatedUrls": [ - -146.403205, - 65.324152 + { + "URL": "https://datapool.asf.alaska.edu/L1/E1/E1_19942_STD_F287.zip", + "Type": "GET DATA", + }, + { + "URL": "https://datapool.asf.alaska.edu/BROWSE/E1/E1_19942_STD_F287.jpg", + "Type": "GET RELATED VISUALIZATION", + }, ], - [ - -148.460235, - 65.57549 - ] - ] - ], - "type": "Polygon" - }, - "properties": { - "beamModeType": "STD", - "browse": "https://datapool.asf.alaska.edu/BROWSE/E1/E1_19942_STD_F287.jpg", - "bytes": 58750445, - "centerLat": 64.9813, - "centerLon": -147.7602, - "faradayRotation": null, - "fileID": "E1_19942_STD_F287-L1", - "flightDirection": null, - "groupID": null, - "granuleType": "E1_STD_FRAME", - "insarStackId": "1736495", - "md5sum": "612958259af2fa499cd10a12d9e8c9a4", - "offNadirAngle": -1.0, - "orbit": 19942, - "pathNumber": 415, - "platform": "ERS-1", - "pointingAngle": null, - "polarization": "VV", - "processingDate": "2010-12-05T11:21:45.000Z", - "processingLevel": "L1", - "sceneName": "E1_19942_STD_F287", - "sensor": "SAR", - "startTime": "1995-05-08T21:09:19.000Z", - "stopTime": "1995-05-08T21:09:36.000Z", - "url": "https://datapool.asf.alaska.edu/L1/E1/E1_19942_STD_F287.zip", - "fileName": "E1_19942_STD_F287.zip", - "frameNumber": "2291" - }, - "baseline": { - "insarBaseline": 0.0 - }, - "umm": { - "TemporalExtent": { - "RangeDateTime": { - "BeginningDateTime": "1995-05-08T21:09:19.000Z", - "EndingDateTime": "1995-05-08T21:09:36.000Z" - } - }, - "OrbitCalculatedSpatialDomains": [ - { - "OrbitNumber": 19942 - } - ], - "GranuleUR": "E1_19942_STD_F287-L1", - "AdditionalAttributes": [ - { - "Name": "FLIGHT_LINE", - "Values": [ - "NULL" - ] - }, - { - "Name": "OFF_NADIR_ANGLE", - "Values": [ - "-1" - ] - }, - { - "Name": "MD5SUM", - "Values": [ - "612958259af2fa499cd10a12d9e8c9a4" - ] - }, - { - "Name": "GRANULE_TYPE", - "Values": [ - "E1_STD_FRAME" - ] - }, - { - "Name": "ASCENDING_DESCENDING", - "Values": [ - "DESCENDING" - ] - }, - { - "Name": "FAR_END_LAT", - "Values": [ - "64.6274" - ] - }, - { - "Name": "INSAR_STACK_SIZE", - "Values": [ - "139" - ] - }, - { - "Name": "BEAM_MODE_TYPE", - "Values": [ - "STD" - ] - }, - { - "Name": "INSAR_BASELINE", - "Values": [ - "0" - ] - }, - { - "Name": "CENTER_FRAME_ID", - "Values": [ - "2291" - ] - }, - { - "Name": "CENTER_ESA_FRAME", - "Values": [ - "2291" - ] - }, - { - "Name": "ACQUISITION_DATE", - "Values": [ - "1995-05-08T21:09:36Z" - ] - }, - { - "Name": "MISSION_NAME", - "Values": [ - "NULL" - ] - }, - { - "Name": "CENTER_LON", - "Values": [ - "-147.7602" - ] - }, - { - "Name": "NEAR_START_LAT", - "Values": [ - "65.3242" - ] - }, - { - "Name": "BEAM_MODE", - "Values": [ - "Standard" - ] - }, - { - "Name": "BEAM_MODE_DESC", - "Values": [ - "ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR" - ] - }, - { - "Name": "PROCESSING_TYPE", - "Values": [ - "L1" - ] - }, - { - "Name": "PROCESSING_DESCRIPTION", - "Values": [ - "Fully processed SAR data." - ] - }, - { - "Name": "FRAME_NUMBER", - "Values": [ - "287" - ] - }, - { - "Name": "PROCESSING_LEVEL", - "Values": [ - "L1" - ] - }, - { - "Name": "PROCESSING_DATE", - "Values": [ - "2010-12-05 11:21:45.673251" - ] - }, - { - "Name": "NEAR_START_LON", - "Values": [ - "-146.4032" - ] - }, - { - "Name": "DOPPLER", - "Values": [ - "0" - ] - }, - { - "Name": "FAR_START_LAT", - "Values": [ - "65.5755" - ] - }, - { - "Name": "NEAR_END_LON", - "Values": [ - "-147.0941" - ] - }, - { - "Name": "PROCESSING_TYPE_DISPLAY", - "Values": [ - "Level One Image" - ] - }, - { - "Name": "POLARIZATION", - "Values": [ - "VV" - ] - }, - { - "Name": "FAR_START_LON", - "Values": [ - "-148.4602" - ] - }, - { - "Name": "THUMBNAIL_URL", - "Values": [ - "https://datapool.asf.alaska.edu/THUMBNAIL/E1/E1_19942_STD_F287_THUMBNAIL.jpg" - ] - }, - { - "Name": "ASF_PLATFORM", - "Values": [ - "ERS-1" - ] - }, - { - "Name": "INSAR_STACK_ID", - "Values": [ - "1736495" - ] - }, - { - "Name": "LOOK_DIRECTION", - "Values": [ - "R" - ] - }, - { - "Name": "PATH_NUMBER", - "Values": [ - "415" - ] - }, - { - "Name": "NEAR_END_LAT", - "Values": [ - "64.3827" - ] - }, - { - "Name": "FARADAY_ROTATION", - "Values": [ - "NA" - ] - }, - { - "Name": "FAR_END_LON", - "Values": [ - "-149.0811" - ] - }, - { - "Name": "BYTES", - "Values": [ - "58750445" - ] - }, - { - "Name": "CENTER_LAT", - "Values": [ - "64.9813" - ] - } - ], - "SpatialExtent": { - "HorizontalSpatialDomain": { - "Geometry": { - "GPolygons": [ - { - "Boundary": { - "Points": [ - { - "Longitude": -148.460235, - "Latitude": 65.57549 - }, - { - "Longitude": -149.081122, - "Latitude": 64.627404 - }, - { - "Longitude": -147.094104, - "Latitude": 64.38274 - }, - { - "Longitude": -146.403205, - "Latitude": 65.324152 - }, - { - "Longitude": -148.460235, - "Latitude": 65.57549 - } - ] - } - } - ] - } - } - }, - "ProviderDates": [ - { - "Date": "2010-12-05T11:21:45.000Z", - "Type": "Insert" - }, - { - "Date": "2010-12-05T11:21:45.000Z", - "Type": "Update" - } - ], - "CollectionReference": { - "EntryTitle": "ERS-1_LEVEL1" - }, - "RelatedUrls": [ - { - "Format": "Not provided", - "Type": "GET DATA", - "URL": "https://datapool.asf.alaska.edu/L1/E1/E1_19942_STD_F287.zip" - }, - { - "Format": "Not provided", - "Type": "GET RELATED VISUALIZATION", - "URL": "https://datapool.asf.alaska.edu/BROWSE/E1/E1_19942_STD_F287.jpg" - } - ], - "DataGranule": { - "DayNightFlag": "Unspecified", - "Identifiers": [ + "DataGranule": { - "Identifier": "E1_19942_STD_F287", - "IdentifierType": "ProducerGranuleId" - } - ], - "ProductionDateTime": "2010-12-05T11:21:45.000Z", - "ArchiveAndDistributionInformation": [ + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "E1_19942_STD_F287", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2010-12-05T11:21:45.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 56.02, + "SizeUnit": "MB", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "ERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + "MetadataSpecification": { - "Name": "Not provided", - "Size": 56.02, - "SizeUnit": "MB", - "Format": "Not provided" - } - ] + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, }, - "Platforms": [ - { - "ShortName": "ERS-1", - "Instruments": [ - { - "ShortName": "SAR", - "ComposedOf": [ - { - "ShortName": "STD" - } - ] - } - ] - } - ] - }, - "meta": { - "concept-type": "granule", - "concept-id": "G1213363105-ASF", - "revision-id": 1, - "native-id": "E1_19942_STD_F287-L1", - "provider-id": "ASF", - "format": "application/echo10+xml", - "revision-date": "2015-11-13T18:39:18.230Z" - } -} \ No newline at end of file + "geometry": + { + "coordinates": + [ + [ + [-148.460235, 65.57549], + [-149.081122, 64.627404], + [-147.094104, 64.38274], + [-146.403205, 65.324152], + [-148.460235, 65.57549], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": 0.0 }, +} diff --git a/tests/yml_tests/Resources/SLC_BURST.yml b/tests/yml_tests/Resources/SLC_BURST.yml index 2473bc2c..ff1b1cb8 100644 --- a/tests/yml_tests/Resources/SLC_BURST.yml +++ b/tests/yml_tests/Resources/SLC_BURST.yml @@ -3,89 +3,131 @@ { "beamModeType": "IW", "browse": None, - "bytes": None, - "centerLat": 57.37481196728577, - "centerLon": -133.71556178621003, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, "faradayRotation": None, - "fileID": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", - "flightDirection": "ASCENDING", - "groupID": "S1A_IWDV_0184_0190_005051_079", + "fileID": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_012275_174", "granuleType": None, "insarStackId": None, "md5sum": None, "offNadirAngle": None, - "orbit": 5051, - "pathNumber": 79, - "platform": "SENTINEL-1A", + "orbit": 12275, + "pathNumber": 174, + "platform": "SENTINEL-1B", "pointingAngle": None, - "polarization": "VH", + "polarization": "VV", "processingDate": None, "processingLevel": "BURST", - "sceneName": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", + "sceneName": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", "sensor": "C-SAR", - "startTime": "2015-03-16T02:37:31.036086Z", - "stopTime": "2015-03-16T02:37:32.077676Z", - "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.tiff", - "fileName": "5.tiff", + "startTime": "2018-08-15T15:15:59.530553Z", + "stopTime": "2018-08-15T15:16:02.652943Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST.tiff", "frameNumber": None, "burst": { - "absoluteBurstID": 10847375, - "relativeBurstID": 167878, - "fullBurstID": "079_167878_IW2", + "absoluteBurstID": 26364401, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", "burstIndex": 5, - "samplesPerBurst": 25023, - "subswath": "IW2", - "azimuthTime": "2015-03-16T02:37:30.005466", - "azimuthAnxTime": "936.0866766603999", + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-08-15T15:15:58.385550", + "azimuthAnxTime": "2026.218343215", }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.xml", + ], }, "meta": { "concept-type": "granule", - "concept-id": "G1257175671-ASFDEV", - "revision-id": 1, - "native-id": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", - "provider-id": "ASFDEV", + "concept-id": "G2709386819-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", + "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", - "revision-date": "2023-04-11T00:34:07.016Z", + "revision-date": "2023-06-16T01:24:43.705Z", }, "umm": { - "TemporalExtent": { "RangeDateTime": { "BeginningDateTime": "2015-03-16T02:37:31.036086Z", "EndingDateTime": "2015-03-16T02:37:32.077676Z" } }, - "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 5051 }], - "GranuleUR": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-08-15T15:15:59.530553Z", + "EndingDateTime": "2018-08-15T15:16:02.652943Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12275 }], + "GranuleUR": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", "AdditionalAttributes": [ - { "Name": "ASC_NODE_TIME", "Values": ["2015-03-16T02:21:53.918789"] }, - { "Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"] }, - { "Name": "AZIMUTH_ANX_TIME", "Values": ["936.0866766603999"] }, - { "Name": "AZIMUTH_TIME", "Values": ["2015-03-16T02:37:30.005466"] }, + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-08-15T14:42:12.162110Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.218343215"] }, + { "Name": "AZIMUTH_TIME", "Values": ["2018-08-15T15:15:58.385550"] }, { "Name": "BEAM_MODE", "Values": ["IW"] }, { "Name": "BEAM_MODE_DESC", - "Values": ["Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses."], + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], }, - { "Name": "BURST_ID_ABSOLUTE", "Values": ["10847375"] }, - { "Name": "BURST_ID_FULL", "Values": ["079_167878_IW2"] }, - { "Name": "BURST_ID_RELATIVE", "Values": ["167878"] }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["26364401"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, { "Name": "BURST_INDEX", "Values": ["5"] }, - { "Name": "BYTE_LENGTH", "Values": ["151439196"] }, - { "Name": "BYTE_OFFSET", "Values": ["757317335"] }, - { "Name": "CENTER_LAT", "Values": ["57.37481196728577"] }, - { "Name": "CENTER_LON", "Values": ["-133.71556178621003"] }, - { "Name": "GROUP_ID", "Values": ["S1A_IWDV_0184_0190_005051_079"] }, - { "Name": "LINES_PER_BURST", "Values": ["1513"] }, - { "Name": "PATH_NUMBER", "Values": ["79"] }, - { "Name": "POLARIZATION", "Values": ["VH"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_012275_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, - { "Name": "SAMPLES_PER_BURST", "Values": ["25023"] }, - { "Name": "SUBSWATH_NAME", "Values": ["IW2"] }, - { "Name": "SV_POSITION_POST", "Values": ["-3078107.203128,-2429893.458311,5879766.359772,2015-03-16T02:37:34.000000"] }, - { "Name": "SV_POSITION_PRE", "Values": ["-3111615.103481,-2484588.280656,5839224.145067,2015-03-16T02:37:24.000000"] }, - { "Name": "SV_VELOCITY_POST", "Values": ["3372.083035,5480.744957,4021.123749,2015-03-16T02:37:34.000000"] }, - { "Name": "SV_VELOCITY_PRE", "Values": ["3329.439778,5458.106882,4087.243253,2015-03-16T02:37:24.000000"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419229.546207,-3214436.538423,5811112.703184,2018-08-15T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365795.260173,-3179475.675198,5852106.264147,2018-08-15T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.523806,-3474.255053,-4132.218956,2018-08-15T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.222875,-3517.857432,-4066.416445,2018-08-15T15:15:56.000000", + ], + }, ], "SpatialExtent": { @@ -100,13 +142,34 @@ { "Points": [ - { "Latitude": 57.208768, "Longitude": -134.429185 }, - { "Latitude": 57.283638, "Longitude": -133.668191 }, - { "Latitude": 57.349892, "Longitude": -132.947782 }, - { "Latitude": 57.541739, "Longitude": -133.009124 }, - { "Latitude": 57.471188, "Longitude": -133.731915 }, - { "Latitude": 57.391995, "Longitude": -134.49532 }, - { "Latitude": 57.208768, "Longitude": -134.429185 }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, ], }, }, @@ -114,19 +177,25 @@ }, }, }, - "ProviderDates": [{ "Type": "Insert", "Date": "2023-04-11T00:34:06Z" }, { "Type": "Update", "Date": "2023-04-11T00:34:06Z" }], - "CollectionReference": { "ShortName": "SENTINEL-1_BURSTS_DEV10", "Version": "1" }, - "PGEVersionClass": { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:24:43Z" }, + { "Type": "Update", "Date": "2023-06-16T01:24:43Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, "RelatedUrls": [ { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.tiff", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.tiff", "Type": "USE SERVICE API", "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", - "Format": "Not provided", + "Format": "GeoTIFF", }, { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.xml", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.xml", "Type": "USE SERVICE API", "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", "Format": "XML", @@ -135,16 +204,47 @@ "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", "Type": "VIEW RELATED INFORMATION", "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", - "Format": "Not provided", }, ], - "InputGranules": ["S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9-SLC"], - "Platforms": [{ "Instruments": [{ "ShortName": "C-SAR", "Characteristics": [{ "Name": "LookDirection", "Value": "RIGHT" }] }], "ShortName": "SENTINEL-1A" }], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, }, "geometry": { "coordinates": - [[[-134.429185, 57.208768], [-133.668191, 57.283638], [-132.947782, 57.349892], [-133.009124, 57.541739], [-133.731915, 57.471188], [-134.49532, 57.391995], [-134.429185, 57.208768]]], + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], "type": "Polygon", }, "baseline": @@ -153,19 +253,193 @@ { "positions": { - "prePosition": [-3111615.103481, -2484588.280656, 5839224.145067], - "prePositionTime": "2015-03-16T02:37:24.000000", - "postPosition": [-3078107.203128, -2429893.458311, 5879766.359772], - "postPositionTime": "2015-03-16T02:37:34.000000", + "prePosition": [-2365795.260173, -3179475.675198, 5852106.264147], + "prePositionTime": "2018-08-15T15:15:56.000000Z", + "postPosition": + [-2419229.546207, -3214436.538423, 5811112.703184], + "postPositionTime": "2018-08-15T15:16:06.000000Z", }, "velocities": { - "preVelocity": [3329.439778, 5458.106882, 4087.243253], - "preVelocityTime": "2015-03-16T02:37:24.000000", - "postVelocity": [3372.083035, 5480.744957, 4021.123749], - "postVelocityTime": "2015-03-16T02:37:34.000000", + "preVelocity": [-5354.222875, -3517.857432, -4066.416445], + "preVelocityTime": "2018-08-15T15:15:56.000000", + "postVelocity": [-5332.523806, -3474.255053, -4132.218956], + "postVelocityTime": "2018-08-15T15:16:06.000000", }, }, - "ascendingNodeTime": "2015-03-16T02:21:53.918789", + "ascendingNodeTime": "2018-08-15T14:42:12.162110Z", }, } +# { +# "properties": +# { +# "beamModeType": "IW", +# "browse": None, +# "bytes": None, +# "centerLat": 57.37481196728577, +# "centerLon": -133.71556178621003, +# "faradayRotation": None, +# "fileID": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", +# "flightDirection": "ASCENDING", +# "groupID": "S1A_IWDV_0184_0190_005051_079", +# "granuleType": None, +# "insarStackId": None, +# "md5sum": None, +# "offNadirAngle": None, +# "orbit": 5051, +# "pathNumber": 79, +# "platform": "SENTINEL-1A", +# "pointingAngle": None, +# "polarization": "VH", +# "processingDate": None, +# "processingLevel": "BURST", +# "sceneName": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", +# "sensor": "C-SAR", +# "startTime": "2015-03-16T02:37:31.036086Z", +# "stopTime": "2015-03-16T02:37:32.077676Z", +# "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.tiff", +# "fileName": "5.tiff", +# "frameNumber": None, +# "burst": +# { +# "absoluteBurstID": 10847375, +# "relativeBurstID": 167878, +# "fullBurstID": "079_167878_IW2", +# "burstIndex": 5, +# "samplesPerBurst": 25023, +# "subswath": "IW2", +# "azimuthTime": "2015-03-16T02:37:30.005466", +# "azimuthAnxTime": "936.0866766603999", +# }, +# }, +# "meta": +# { +# "concept-type": "granule", +# "concept-id": "G1257175671-ASFDEV", +# "revision-id": 1, +# "native-id": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", +# "provider-id": "ASFDEV", +# "format": "application/vnd.nasa.cmr.umm+json", +# "revision-date": "2023-04-11T00:34:07.016Z", +# }, +# "umm": +# { +# "TemporalExtent": { "RangeDateTime": { "BeginningDateTime": "2015-03-16T02:37:31.036086Z", "EndingDateTime": "2015-03-16T02:37:32.077676Z" } }, +# "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 5051 }], +# "GranuleUR": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", +# "AdditionalAttributes": +# [ +# { "Name": "ASC_NODE_TIME", "Values": ["2015-03-16T02:21:53.918789"] }, +# { "Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"] }, +# { "Name": "AZIMUTH_ANX_TIME", "Values": ["936.0866766603999"] }, +# { "Name": "AZIMUTH_TIME", "Values": ["2015-03-16T02:37:30.005466"] }, +# { "Name": "BEAM_MODE", "Values": ["IW"] }, +# { +# "Name": "BEAM_MODE_DESC", +# "Values": ["Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses."], +# }, +# { "Name": "BURST_ID_ABSOLUTE", "Values": ["10847375"] }, +# { "Name": "BURST_ID_FULL", "Values": ["079_167878_IW2"] }, +# { "Name": "BURST_ID_RELATIVE", "Values": ["167878"] }, +# { "Name": "BURST_INDEX", "Values": ["5"] }, +# { "Name": "BYTE_LENGTH", "Values": ["151439196"] }, +# { "Name": "BYTE_OFFSET", "Values": ["757317335"] }, +# { "Name": "CENTER_LAT", "Values": ["57.37481196728577"] }, +# { "Name": "CENTER_LON", "Values": ["-133.71556178621003"] }, +# { "Name": "GROUP_ID", "Values": ["S1A_IWDV_0184_0190_005051_079"] }, +# { "Name": "LINES_PER_BURST", "Values": ["1513"] }, +# { "Name": "PATH_NUMBER", "Values": ["79"] }, +# { "Name": "POLARIZATION", "Values": ["VH"] }, +# { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, +# { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, +# { "Name": "SAMPLES_PER_BURST", "Values": ["25023"] }, +# { "Name": "SUBSWATH_NAME", "Values": ["IW2"] }, +# { "Name": "SV_POSITION_POST", "Values": ["-3078107.203128,-2429893.458311,5879766.359772,2015-03-16T02:37:34.000000"] }, +# { "Name": "SV_POSITION_PRE", "Values": ["-3111615.103481,-2484588.280656,5839224.145067,2015-03-16T02:37:24.000000"] }, +# { "Name": "SV_VELOCITY_POST", "Values": ["3372.083035,5480.744957,4021.123749,2015-03-16T02:37:34.000000"] }, +# { "Name": "SV_VELOCITY_PRE", "Values": ["3329.439778,5458.106882,4087.243253,2015-03-16T02:37:24.000000"] }, +# ], +# "SpatialExtent": +# { +# "HorizontalSpatialDomain": +# { +# "Geometry": +# { +# "GPolygons": +# [ +# { +# "Boundary": +# { +# "Points": +# [ +# { "Latitude": 57.208768, "Longitude": -134.429185 }, +# { "Latitude": 57.283638, "Longitude": -133.668191 }, +# { "Latitude": 57.349892, "Longitude": -132.947782 }, +# { "Latitude": 57.541739, "Longitude": -133.009124 }, +# { "Latitude": 57.471188, "Longitude": -133.731915 }, +# { "Latitude": 57.391995, "Longitude": -134.49532 }, +# { "Latitude": 57.208768, "Longitude": -134.429185 }, +# ], +# }, +# }, +# ], +# }, +# }, +# }, +# "ProviderDates": [{ "Type": "Insert", "Date": "2023-04-11T00:34:06Z" }, { "Type": "Update", "Date": "2023-04-11T00:34:06Z" }], +# "CollectionReference": { "ShortName": "SENTINEL-1_BURSTS_DEV10", "Version": "1" }, +# "PGEVersionClass": { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, +# "RelatedUrls": +# [ +# { +# "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.tiff", +# "Type": "USE SERVICE API", +# "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", +# "Format": "Not provided", +# }, +# { +# "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.xml", +# "Type": "USE SERVICE API", +# "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", +# "Format": "XML", +# }, +# { +# "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", +# "Type": "VIEW RELATED INFORMATION", +# "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", +# "Format": "Not provided", +# }, +# ], +# "InputGranules": ["S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9-SLC"], +# "Platforms": [{ "Instruments": [{ "ShortName": "C-SAR", "Characteristics": [{ "Name": "LookDirection", "Value": "RIGHT" }] }], "ShortName": "SENTINEL-1A" }], +# }, +# "geometry": +# { +# "coordinates": +# [[[-134.429185, 57.208768], [-133.668191, 57.283638], [-132.947782, 57.349892], [-133.009124, 57.541739], [-133.731915, 57.471188], [-134.49532, 57.391995], [-134.429185, 57.208768]]], +# "type": "Polygon", +# }, +# "baseline": +# { +# "stateVectors": +# { +# "positions": +# { +# "prePosition": [-3111615.103481, -2484588.280656, 5839224.145067], +# "prePositionTime": "2015-03-16T02:37:24.000000", +# "postPosition": [-3078107.203128, -2429893.458311, 5879766.359772], +# "postPositionTime": "2015-03-16T02:37:34.000000", +# }, +# "velocities": +# { +# "preVelocity": [3329.439778, 5458.106882, 4087.243253], +# "preVelocityTime": "2015-03-16T02:37:24.000000", +# "postVelocity": [3372.083035, 5480.744957, 4021.123749], +# "postVelocityTime": "2015-03-16T02:37:34.000000", +# }, +# }, +# "ascendingNodeTime": "2015-03-16T02:21:53.918789", +# }, +# }, + +# {"properties": product.properties,"meta": product.meta,"umm": product.umm,"geometry": product.geometry,"baseline": product.baseline} diff --git a/tests/yml_tests/Resources/SLC_BURST_stack.yml b/tests/yml_tests/Resources/SLC_BURST_stack.yml index 5aaed000..252f4bdc 100644 --- a/tests/yml_tests/Resources/SLC_BURST_stack.yml +++ b/tests/yml_tests/Resources/SLC_BURST_stack.yml @@ -3,92 +3,137 @@ "properties": { "beamModeType": "IW", - "browse": None, - "bytes": None, - "centerLat": 57.37481196728577, - "centerLon": -133.71556178621003, - "faradayRotation": None, - "fileID": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", - "flightDirection": "ASCENDING", - "groupID": "S1A_IWDV_0184_0190_005051_079", - "granuleType": None, - "insarStackId": None, - "md5sum": None, - "offNadirAngle": None, - "orbit": 5051, - "pathNumber": 79, - "platform": "SENTINEL-1A", - "pointingAngle": None, - "polarization": "VH", - "processingDate": None, - "processingLevel": "BURST", - "sceneName": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", - "sensor": "C-SAR", - "startTime": "2015-03-16T02:37:31.036086Z", - "stopTime": "2015-03-16T02:37:32.077676Z", - "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.tiff", - "fileName": "5.tiff", - "frameNumber": None, - "burst": - { - "absoluteBurstID": 10847375, - "relativeBurstID": 167878, - "fullBurstID": "079_167878_IW2", - "burstIndex": 5, - "samplesPerBurst": 25023, - "subswath": "IW2", - "azimuthTime": "2015-03-16T02:37:30.005466", - "azimuthAnxTime": "936.0866766603999", + "browse": null, + "bytes": 144671472, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20141017T151617_VV_3B42-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_002871_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 2871, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20141017T151617_VV_3B42-BURST", + "sensor": "C-SAR", + "startTime": "2014-10-17T15:16:18.260108Z", + "stopTime": "2014-10-17T15:16:21.380442Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141017T151607_20141017T151631_002871_0033F3_3B42/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20141017T151617_VV_3B42-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 6165287, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23826, + "subswath": "IW3", + "azimuthTime": "2014-10-17T15:16:17.116615", + "azimuthAnxTime": "2026.2536406621", }, - "temporalBaseline": 0, - "perpendicularBaseline": 0, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141017T151607_20141017T151631_002871_0033F3_3B42/IW3/VV/3.xml", + ], + "temporalBaseline": -1398, + "perpendicularBaseline": 19, }, "meta": { "concept-type": "granule", - "concept-id": "G1257175671-ASFDEV", - "revision-id": 1, - "native-id": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", - "provider-id": "ASFDEV", + "concept-id": "G2709350887-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20141017T151617_VV_3B42-BURST", + "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", - "revision-date": "2023-04-11T00:34:07.016Z", + "revision-date": "2023-06-16T01:09:15.849Z", }, "umm": { - "TemporalExtent": { "RangeDateTime": { "BeginningDateTime": "2015-03-16T02:37:31.036086Z", "EndingDateTime": "2015-03-16T02:37:32.077676Z" } }, - "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 5051 }], - "GranuleUR": "S1_167878_IW2_20150316T023730_VH_BAD9-BURST", + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2014-10-17T15:16:18.260108Z", + "EndingDateTime": "2014-10-17T15:16:21.380442Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 2871 }], + "GranuleUR": "S1_372326_IW3_20141017T151617_VV_3B42-BURST", "AdditionalAttributes": [ - { "Name": "ASC_NODE_TIME", "Values": ["2015-03-16T02:21:53.918789"] }, - { "Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"] }, - { "Name": "AZIMUTH_ANX_TIME", "Values": ["936.0866766603999"] }, - { "Name": "AZIMUTH_TIME", "Values": ["2015-03-16T02:37:30.005466"] }, + { + "Name": "ASC_NODE_TIME", + "Values": ["2014-10-17T14:42:30.866938Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2536406621"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2014-10-17T15:16:17.116615"], + }, { "Name": "BEAM_MODE", "Values": ["IW"] }, { "Name": "BEAM_MODE_DESC", - "Values": ["Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses."], + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], }, - { "Name": "BURST_ID_ABSOLUTE", "Values": ["10847375"] }, - { "Name": "BURST_ID_FULL", "Values": ["079_167878_IW2"] }, - { "Name": "BURST_ID_RELATIVE", "Values": ["167878"] }, - { "Name": "BURST_INDEX", "Values": ["5"] }, - { "Name": "BYTE_LENGTH", "Values": ["151439196"] }, - { "Name": "BYTE_OFFSET", "Values": ["757317335"] }, - { "Name": "CENTER_LAT", "Values": ["57.37481196728577"] }, - { "Name": "CENTER_LON", "Values": ["-133.71556178621003"] }, - { "Name": "GROUP_ID", "Values": ["S1A_IWDV_0184_0190_005051_079"] }, - { "Name": "LINES_PER_BURST", "Values": ["1513"] }, - { "Name": "PATH_NUMBER", "Values": ["79"] }, - { "Name": "POLARIZATION", "Values": ["VH"] }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["6165287"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144671472"] }, + { "Name": "BYTE_OFFSET", "Values": ["434111883"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_002871_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, - { "Name": "SAMPLES_PER_BURST", "Values": ["25023"] }, - { "Name": "SUBSWATH_NAME", "Values": ["IW2"] }, - { "Name": "SV_POSITION_POST", "Values": ["-3078107.203128,-2429893.458311,5879766.359772,2015-03-16T02:37:34.000000"] }, - { "Name": "SV_POSITION_PRE", "Values": ["-3111615.103481,-2484588.280656,5839224.145067,2015-03-16T02:37:24.000000"] }, - { "Name": "SV_VELOCITY_POST", "Values": ["3372.083035,5480.744957,4021.123749,2015-03-16T02:37:34.000000"] }, - { "Name": "SV_VELOCITY_PRE", "Values": ["3329.439778,5458.106882,4087.243253,2015-03-16T02:37:24.000000"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23826"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2411303.735329,-3209285.233999,5817281.520437,2014-10-17T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2357837.117048,-3174260.606694,5858177.19518,2014-10-17T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5335.806425,-3480.658428,-4122.464304,2014-10-17T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5357.406693,-3524.206736,-4056.59406,2014-10-17T15:16:14.000000", + ], + }, ], "SpatialExtent": { @@ -103,13 +148,34 @@ { "Points": [ - { "Latitude": 57.208768, "Longitude": -134.429185 }, - { "Latitude": 57.283638, "Longitude": -133.668191 }, - { "Latitude": 57.349892, "Longitude": -132.947782 }, - { "Latitude": 57.541739, "Longitude": -133.009124 }, - { "Latitude": 57.471188, "Longitude": -133.731915 }, - { "Latitude": 57.391995, "Longitude": -134.49532 }, - { "Latitude": 57.208768, "Longitude": -134.429185 }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, ], }, }, @@ -117,19 +183,25 @@ }, }, }, - "ProviderDates": [{ "Type": "Insert", "Date": "2023-04-11T00:34:06Z" }, { "Type": "Update", "Date": "2023-04-11T00:34:06Z" }], - "CollectionReference": { "ShortName": "SENTINEL-1_BURSTS_DEV10", "Version": "1" }, - "PGEVersionClass": { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:09:15Z" }, + { "Type": "Update", "Date": "2023-06-16T01:09:15Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, "RelatedUrls": [ { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.tiff", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141017T151607_20141017T151631_002871_0033F3_3B42/IW3/VV/3.tiff", "Type": "USE SERVICE API", "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", - "Format": "Not provided", + "Format": "GeoTIFF", }, { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9/IW2/VH/5.xml", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141017T151607_20141017T151631_002871_0033F3_3B42/IW3/VV/3.xml", "Type": "USE SERVICE API", "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", "Format": "XML", @@ -138,16 +210,47 @@ "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", "Type": "VIEW RELATED INFORMATION", "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", - "Format": "Not provided", }, ], - "InputGranules": ["S1A_IW_SLC__1SDV_20150316T023715_20150316T023745_005051_006577_BAD9-SLC"], - "Platforms": [{ "Instruments": [{ "ShortName": "C-SAR", "Characteristics": [{ "Name": "LookDirection", "Value": "RIGHT" }] }], "ShortName": "SENTINEL-1A" }], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20141017T151607_20141017T151631_002871_0033F3_3B42-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, }, "geometry": { "coordinates": - [[[-134.429185, 57.208768], [-133.668191, 57.283638], [-132.947782, 57.349892], [-133.009124, 57.541739], [-133.731915, 57.471188], [-134.49532, 57.391995], [-134.429185, 57.208768]]], + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], "type": "Polygon", }, "baseline": @@ -156,117 +259,164 @@ { "positions": { - "prePosition": [-3111615.103481, -2484588.280656, 5839224.145067], - "prePositionTime": "2015-03-16T02:37:24.000000", - "postPosition": [-3078107.203128, -2429893.458311, 5879766.359772], - "postPositionTime": "2015-03-16T02:37:34.000000", + "prePosition": + [-2357837.117048, -3174260.606694, 5858177.19518], + "prePositionTime": "2014-10-17T15:16:14.000000Z", + "postPosition": + [-2411303.735329, -3209285.233999, 5817281.520437], + "postPositionTime": "2014-10-17T15:16:24.000000Z", }, "velocities": { - "preVelocity": [3329.439778, 5458.106882, 4087.243253], - "preVelocityTime": "2015-03-16T02:37:24.000000", - "postVelocity": [3372.083035, 5480.744957, 4021.123749], - "postVelocityTime": "2015-03-16T02:37:34.000000", + "preVelocity": [-5357.406693, -3524.206736, -4056.59406], + "preVelocityTime": "2014-10-17T15:16:14.000000", + "postVelocity": [-5335.806425, -3480.658428, -4122.464304], + "postVelocityTime": "2014-10-17T15:16:24.000000", }, }, - "ascendingNodeTime": "2015-03-16T02:21:53.918789", - "relative_start_time": -27862.882702827454, - "relative_center_time": -27862.361907958984, - "relative_end_time": -27861.841112852097, - "relative_sv_pre_time": 930.0812110900879, - "relative_sv_post_time": 940.0812110900879, + "ascendingNodeTime": "2014-10-17T14:42:30.866938Z", + "relative_start_time": 2027.3931698799133, + "relative_center_time": 2028.9533367156982, + "relative_end_time": 2030.5135037899017, + "relative_sv_pre_time": 2023.1330618858337, + "relative_sv_post_time": 2033.1330618858337, }, }, { "properties": { "beamModeType": "IW", - "browse": None, - "bytes": None, - "centerLat": 57.37481196728577, - "centerLon": -133.71556178621003, - "faradayRotation": None, - "fileID": "S1_167878_IW2_20160415T023737_VH_DE88-BURST", - "flightDirection": "ASCENDING", - "groupID": "S1A_IWDV_0186_0192_010826_079", - "granuleType": None, - "insarStackId": None, - "md5sum": None, - "offNadirAngle": None, - "orbit": 10826, - "pathNumber": 79, + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20141110T151616_VV_96A7-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_003221_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 3221, + "pathNumber": 174, "platform": "SENTINEL-1A", - "pointingAngle": None, - "polarization": "VH", - "processingDate": None, + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, "processingLevel": "BURST", - "sceneName": "S1_167878_IW2_20160415T023737_VH_DE88-BURST", + "sceneName": "S1_372326_IW3_20141110T151616_VV_96A7-BURST", "sensor": "C-SAR", - "startTime": "2016-04-15T02:37:38.091728Z", - "stopTime": "2016-04-15T02:37:39.134007Z", - "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20160415T023733_20160415T023801_010826_01031F_DE88/IW2/VH/1.tiff", - "fileName": "1.tiff", - "frameNumber": None, + "startTime": "2014-11-10T15:16:17.898643Z", + "stopTime": "2014-11-10T15:16:21.018977Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141110T151607_20141110T151630_003221_003B7B_96A7/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20141110T151616_VV_96A7-BURST.tiff", + "frameNumber": null, "burst": { - "absoluteBurstID": 23251659, - "relativeBurstID": 167878, - "fullBurstID": "079_167878_IW2", - "burstIndex": 1, - "samplesPerBurst": 25153, - "subswath": "IW2", - "azimuthTime": "2016-04-15T02:37:37.062789", - "azimuthAnxTime": "936.0779267781", + "absoluteBurstID": 6917062, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2014-11-10T15:16:16.744856", + "azimuthAnxTime": "2026.2299282184", }, - "temporalBaseline": 396, - "perpendicularBaseline": -46, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141110T151607_20141110T151630_003221_003B7B_96A7/IW3/VV/3.xml", + ], + "temporalBaseline": -1374, + "perpendicularBaseline": 73, }, "meta": { "concept-type": "granule", - "concept-id": "G1257175300-ASFDEV", - "revision-id": 1, - "native-id": "S1_167878_IW2_20160415T023737_VH_DE88-BURST", - "provider-id": "ASFDEV", + "concept-id": "G2709348748-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20141110T151616_VV_96A7-BURST", + "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", - "revision-date": "2023-04-10T23:31:37.759Z", + "revision-date": "2023-06-16T01:08:40.671Z", }, "umm": { - "TemporalExtent": { "RangeDateTime": { "BeginningDateTime": "2016-04-15T02:37:38.091728Z", "EndingDateTime": "2016-04-15T02:37:39.134007Z" } }, - "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10826 }], - "GranuleUR": "S1_167878_IW2_20160415T023737_VH_DE88-BURST", + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2014-11-10T15:16:17.898643Z", + "EndingDateTime": "2014-11-10T15:16:21.018977Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 3221 }], + "GranuleUR": "S1_372326_IW3_20141110T151616_VV_96A7-BURST", "AdditionalAttributes": [ - { "Name": "ASC_NODE_TIME", "Values": ["2016-04-15T02:22:00.984862"] }, - { "Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"] }, - { "Name": "AZIMUTH_ANX_TIME", "Values": ["936.0779267781"] }, - { "Name": "AZIMUTH_TIME", "Values": ["2016-04-15T02:37:37.062789"] }, + { + "Name": "ASC_NODE_TIME", + "Values": ["2014-11-10T14:42:30.514709Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2299282184"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2014-11-10T15:16:16.744856"], + }, { "Name": "BEAM_MODE", "Values": ["IW"] }, { "Name": "BEAM_MODE_DESC", - "Values": ["Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses."], + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], }, - { "Name": "BURST_ID_ABSOLUTE", "Values": ["23251659"] }, - { "Name": "BURST_ID_FULL", "Values": ["079_167878_IW2"] }, - { "Name": "BURST_ID_RELATIVE", "Values": ["167878"] }, - { "Name": "BURST_INDEX", "Values": ["1"] }, - { "Name": "BYTE_LENGTH", "Values": ["152326568"] }, - { "Name": "BYTE_OFFSET", "Values": ["152435891"] }, - { "Name": "CENTER_LAT", "Values": ["57.37481196728577"] }, - { "Name": "CENTER_LON", "Values": ["-133.71556178621003"] }, - { "Name": "GROUP_ID", "Values": ["S1A_IWDV_0186_0192_010826_079"] }, - { "Name": "LINES_PER_BURST", "Values": ["1514"] }, - { "Name": "PATH_NUMBER", "Values": ["79"] }, - { "Name": "POLARIZATION", "Values": ["VH"] }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["6917062"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["434075451"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_003221_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, - { "Name": "SAMPLES_PER_BURST", "Values": ["25153"] }, - { "Name": "SUBSWATH_NAME", "Values": ["IW2"] }, - { "Name": "SV_POSITION_POST", "Values": ["-3071540.258551,-2419213.90573,5887524.629699,2016-04-15T02:37:43.000000"] }, - { "Name": "SV_POSITION_PRE", "Values": ["-3105130.855143,-2473953.268623,5847110.827603,2016-04-15T02:37:33.000000"] }, - { "Name": "SV_VELOCITY_POST", "Values": ["3380.319515,5485.133461,4008.237999,2016-04-15T02:37:43.000000"] }, - { "Name": "SV_VELOCITY_PRE", "Values": ["3337.742367,5462.626431,4074.446729,2016-04-15T02:37:33.000000"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2413279.997921,-3210492.992618,5815800.373773,2014-11-10T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2359821.25941,-3175483.895725,5856719.615984,2014-11-10T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5335.006223,-3479.099139,-4124.812752,2014-11-10T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5356.63095,-3522.659948,-4058.959049,2014-11-10T15:16:14.000000", + ], + }, ], "SpatialExtent": { @@ -281,13 +431,34 @@ { "Points": [ - { "Latitude": 57.208768, "Longitude": -134.429185 }, - { "Latitude": 57.283638, "Longitude": -133.668191 }, - { "Latitude": 57.349892, "Longitude": -132.947782 }, - { "Latitude": 57.541739, "Longitude": -133.009124 }, - { "Latitude": 57.471188, "Longitude": -133.731915 }, - { "Latitude": 57.391995, "Longitude": -134.49532 }, - { "Latitude": 57.208768, "Longitude": -134.429185 }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, ], }, }, @@ -295,19 +466,25 @@ }, }, }, - "ProviderDates": [{ "Type": "Insert", "Date": "2023-04-10T23:31:37Z" }, { "Type": "Update", "Date": "2023-04-10T23:31:37Z" }], - "CollectionReference": { "ShortName": "SENTINEL-1_BURSTS_DEV10", "Version": "1" }, - "PGEVersionClass": { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.70" }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:40Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:40Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, "RelatedUrls": [ { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20160415T023733_20160415T023801_010826_01031F_DE88/IW2/VH/1.tiff", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141110T151607_20141110T151630_003221_003B7B_96A7/IW3/VV/3.tiff", "Type": "USE SERVICE API", "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", - "Format": "Not provided", + "Format": "GeoTIFF", }, { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20160415T023733_20160415T023801_010826_01031F_DE88/IW2/VH/1.xml", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141110T151607_20141110T151630_003221_003B7B_96A7/IW3/VV/3.xml", "Type": "USE SERVICE API", "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", "Format": "XML", @@ -316,16 +493,47 @@ "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", "Type": "VIEW RELATED INFORMATION", "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", - "Format": "Not provided", }, ], - "InputGranules": ["S1A_IW_SLC__1SDV_20160415T023733_20160415T023801_010826_01031F_DE88-SLC"], - "Platforms": [{ "Instruments": [{ "ShortName": "C-SAR", "Characteristics": [{ "Name": "LookDirection", "Value": "RIGHT" }] }], "ShortName": "SENTINEL-1A" }], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20141110T151607_20141110T151630_003221_003B7B_96A7-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, }, "geometry": { "coordinates": - [[[-134.429185, 57.208768], [-133.668191, 57.283638], [-132.947782, 57.349892], [-133.009124, 57.541739], [-133.731915, 57.471188], [-134.49532, 57.391995], [-134.429185, 57.208768]]], + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], "type": "Polygon", }, "baseline": @@ -334,117 +542,447 @@ { "positions": { - "prePosition": [-3105130.855143, -2473953.268623, 5847110.827603], - "prePositionTime": "2016-04-15T02:37:33.000000", - "postPosition": [-3071540.258551, -2419213.90573, 5887524.629699], - "postPositionTime": "2016-04-15T02:37:43.000000", + "prePosition": + [-2359821.25941, -3175483.895725, 5856719.615984], + "prePositionTime": "2014-11-10T15:16:14.000000Z", + "postPosition": + [-2413279.997921, -3210492.992618, 5815800.373773], + "postPositionTime": "2014-11-10T15:16:24.000000Z", }, "velocities": { - "preVelocity": [3337.742367, 5462.626431, 4074.446729], - "preVelocityTime": "2016-04-15T02:37:33.000000", - "postVelocity": [3380.319515, 5485.133461, 4008.237999], - "postVelocityTime": "2016-04-15T02:37:43.000000", + "preVelocity": [-5356.63095, -3522.659948, -4058.959049], + "preVelocityTime": "2014-11-10T15:16:14.000000", + "postVelocity": [-5335.006223, -3479.099139, -4124.812752], + "postVelocityTime": "2014-11-10T15:16:24.000000", }, }, - "ascendingNodeTime": "2016-04-15T02:22:00.984862", - "relative_start_time": -27862.893134117126, - "relative_center_time": -27862.37199473381, - "relative_end_time": -27861.850855112076, - "relative_sv_pre_time": 932.0151379108429, - "relative_sv_post_time": 942.0151379108429, + "ascendingNodeTime": "2014-11-10T14:42:30.514709Z", + "relative_start_time": 2027.383934020996, + "relative_center_time": 2028.944100856781, + "relative_end_time": 2030.5042679309845, + "relative_sv_pre_time": 2023.485291004181, + "relative_sv_post_time": 2033.485291004181, }, }, { "properties": { "beamModeType": "IW", - "browse": None, - "bytes": None, - "centerLat": 57.37481196728577, - "centerLon": -133.71556178621003, - "faradayRotation": None, - "fileID": "S1_167878_IW2_20160825T023744_VH_F654-BURST", - "flightDirection": "ASCENDING", - "groupID": "S1A_IWDV_0187_0192_012751_079", - "granuleType": None, - "insarStackId": None, - "md5sum": None, - "offNadirAngle": None, - "orbit": 12751, - "pathNumber": 79, + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20141204T151616_VV_0666-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0407_003571_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 3571, + "pathNumber": 174, "platform": "SENTINEL-1A", - "pointingAngle": None, - "polarization": "VH", - "processingDate": None, + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, "processingLevel": "BURST", - "sceneName": "S1_167878_IW2_20160825T023744_VH_F654-BURST", + "sceneName": "S1_372326_IW3_20141204T151616_VV_0666-BURST", "sensor": "C-SAR", - "startTime": "2016-08-25T02:37:45.117189Z", - "stopTime": "2016-08-25T02:37:46.159468Z", - "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20160825T023743_20160825T023811_012751_014134_F654/IW2/VH/0.tiff", - "fileName": "0.tiff", - "frameNumber": None, + "startTime": "2014-12-04T15:16:17.202674Z", + "stopTime": "2014-12-04T15:16:20.323008Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141204T151606_20141204T151630_003571_004366_0666/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20141204T151616_VV_0666-BURST.tiff", + "frameNumber": null, "burst": { - "absoluteBurstID": 27386420, - "relativeBurstID": 167878, - "fullBurstID": "079_167878_IW2", - "burstIndex": 0, - "samplesPerBurst": 25153, - "subswath": "IW2", - "azimuthTime": "2016-08-25T02:37:44.100303", - "azimuthAnxTime": "936.0934875546", + "absoluteBurstID": 7668837, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2014-12-04T15:16:16.040678", + "azimuthAnxTime": "2026.2287714369", }, - "temporalBaseline": 528, - "perpendicularBaseline": -51, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141204T151606_20141204T151630_003571_004366_0666/IW3/VV/3.xml", + ], + "temporalBaseline": -1350, + "perpendicularBaseline": 88, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348472-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20141204T151616_VV_0666-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:48.971Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2014-12-04T15:16:17.202674Z", + "EndingDateTime": "2014-12-04T15:16:20.323008Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 3571 }], + "GranuleUR": "S1_372326_IW3_20141204T151616_VV_0666-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2014-12-04T14:42:29.816459Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2287714369"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2014-12-04T15:16:16.040678"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["7668837"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["434075451"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0407_003571_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2416995.688287,-3212898.19875,5812942.166498,2014-12-04T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2363552.75994,-3177918.597627,5853907.344941,2014-12-04T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5333.402196,-3476.137217,-4129.390318,2014-12-04T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5355.072933,-3519.722806,-4063.568634,2014-12-04T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:48Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:48Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141204T151606_20141204T151630_003571_004366_0666/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141204T151606_20141204T151630_003571_004366_0666/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20141204T151606_20141204T151630_003571_004366_0666-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2363552.75994, -3177918.597627, 5853907.344941], + "prePositionTime": "2014-12-04T15:16:14.000000Z", + "postPosition": + [-2416995.688287, -3212898.19875, 5812942.166498], + "postPositionTime": "2014-12-04T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5355.072933, -3519.722806, -4063.568634], + "preVelocityTime": "2014-12-04T15:16:14.000000", + "postVelocity": [-5333.402196, -3476.137217, -4129.390318], + "postVelocityTime": "2014-12-04T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2014-12-04T14:42:29.816459Z", + "relative_start_time": 2027.3862149715424, + "relative_center_time": 2028.9463820457458, + "relative_end_time": 2030.5065491199493, + "relative_sv_pre_time": 2024.183541059494, + "relative_sv_post_time": 2034.183541059494, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144671472, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20141228T151615_VV_0F12-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0407_003921_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 3921, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20141228T151615_VV_0F12-BURST", + "sensor": "C-SAR", + "startTime": "2014-12-28T15:16:16.483527Z", + "stopTime": "2014-12-28T15:16:19.603861Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141228T151606_20141228T151629_003921_004B5E_0F12/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20141228T151615_VV_0F12-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 8420612, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23826, + "subswath": "IW3", + "azimuthTime": "2014-12-28T15:16:15.337977", + "azimuthAnxTime": "2026.2423715495", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141228T151606_20141228T151629_003921_004B5E_0F12/IW3/VV/3.xml", + ], + "temporalBaseline": -1326, + "perpendicularBaseline": 23, }, "meta": { "concept-type": "granule", - "concept-id": "G1257175523-ASFDEV", - "revision-id": 1, - "native-id": "S1_167878_IW2_20160825T023744_VH_F654-BURST", - "provider-id": "ASFDEV", + "concept-id": "G2709344977-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20141228T151615_VV_0F12-BURST", + "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", - "revision-date": "2023-04-11T00:07:17.798Z", + "revision-date": "2023-06-16T01:06:35.451Z", }, "umm": { - "TemporalExtent": { "RangeDateTime": { "BeginningDateTime": "2016-08-25T02:37:45.117189Z", "EndingDateTime": "2016-08-25T02:37:46.159468Z" } }, - "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12751 }], - "GranuleUR": "S1_167878_IW2_20160825T023744_VH_F654-BURST", + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2014-12-28T15:16:16.483527Z", + "EndingDateTime": "2014-12-28T15:16:19.603861Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 3921 }], + "GranuleUR": "S1_372326_IW3_20141228T151615_VV_0F12-BURST", "AdditionalAttributes": [ - { "Name": "ASC_NODE_TIME", "Values": ["2016-08-25T02:22:08.006815"] }, - { "Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"] }, - { "Name": "AZIMUTH_ANX_TIME", "Values": ["936.0934875546"] }, - { "Name": "AZIMUTH_TIME", "Values": ["2016-08-25T02:37:44.100303"] }, + { + "Name": "ASC_NODE_TIME", + "Values": ["2014-12-28T14:42:29.095916Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2423715495"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2014-12-28T15:16:15.337977"], + }, { "Name": "BEAM_MODE", "Values": ["IW"] }, { "Name": "BEAM_MODE_DESC", - "Values": ["Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses."], + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], }, - { "Name": "BURST_ID_ABSOLUTE", "Values": ["27386420"] }, - { "Name": "BURST_ID_FULL", "Values": ["079_167878_IW2"] }, - { "Name": "BURST_ID_RELATIVE", "Values": ["167878"] }, - { "Name": "BURST_INDEX", "Values": ["0"] }, - { "Name": "BYTE_LENGTH", "Values": ["152326568"] }, - { "Name": "BYTE_OFFSET", "Values": ["109323"] }, - { "Name": "CENTER_LAT", "Values": ["57.37481196728577"] }, - { "Name": "CENTER_LON", "Values": ["-133.71556178621003"] }, - { "Name": "GROUP_ID", "Values": ["S1A_IWDV_0187_0192_012751_079"] }, - { "Name": "LINES_PER_BURST", "Values": ["1514"] }, - { "Name": "PATH_NUMBER", "Values": ["79"] }, - { "Name": "POLARIZATION", "Values": ["VH"] }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["8420612"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144671472"] }, + { "Name": "BYTE_OFFSET", "Values": ["434111883"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0407_003921_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, - { "Name": "SAMPLES_PER_BURST", "Values": ["25153"] }, - { "Name": "SUBSWATH_NAME", "Values": ["IW2"] }, - { "Name": "SV_POSITION_POST", "Values": ["-3061451.959187,-2402862.905398,5899436.043045,2016-08-25T02:37:53.000000"] }, - { "Name": "SV_POSITION_PRE", "Values": ["-3095169.198295,-2457668.980221,5859219.605349,2016-08-25T02:37:43.000000"] }, - { "Name": "SV_VELOCITY_POST", "Values": ["3392.932194,5491.703858,3988.434266,2016-08-25T02:37:53.000000"] }, - { "Name": "SV_VELOCITY_PRE", "Values": ["3350.457923,5469.398314,4054.777958,2016-08-25T02:37:43.000000"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23826"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2420782.215493,-3215466.757788,5809963.155155,2014-12-28T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2367353.87906,-3180519.716445,5850975.350736,2014-12-28T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5331.919441,-3472.867892,-4134.07527,2014-12-28T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5353.637371,-3516.480246,-4068.287037,2014-12-28T15:16:14.000000", + ], + }, ], "SpatialExtent": { @@ -459,13 +997,34 @@ { "Points": [ - { "Latitude": 57.208768, "Longitude": -134.429185 }, - { "Latitude": 57.283638, "Longitude": -133.668191 }, - { "Latitude": 57.349892, "Longitude": -132.947782 }, - { "Latitude": 57.541739, "Longitude": -133.009124 }, - { "Latitude": 57.471188, "Longitude": -133.731915 }, - { "Latitude": 57.391995, "Longitude": -134.49532 }, - { "Latitude": 57.208768, "Longitude": -134.429185 }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, ], }, }, @@ -473,19 +1032,25 @@ }, }, }, - "ProviderDates": [{ "Type": "Insert", "Date": "2023-04-11T00:07:17Z" }, { "Type": "Update", "Date": "2023-04-11T00:07:17Z" }], - "CollectionReference": { "ShortName": "SENTINEL-1_BURSTS_DEV10", "Version": "1" }, - "PGEVersionClass": { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:06:35Z" }, + { "Type": "Update", "Date": "2023-06-16T01:06:35Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, "RelatedUrls": [ { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20160825T023743_20160825T023811_012751_014134_F654/IW2/VH/0.tiff", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141228T151606_20141228T151629_003921_004B5E_0F12/IW3/VV/3.tiff", "Type": "USE SERVICE API", "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", - "Format": "Not provided", + "Format": "GeoTIFF", }, { - "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SDV_20160825T023743_20160825T023811_012751_014134_F654/IW2/VH/0.xml", + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20141228T151606_20141228T151629_003921_004B5E_0F12/IW3/VV/3.xml", "Type": "USE SERVICE API", "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", "Format": "XML", @@ -494,16 +1059,45881 @@ "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", "Type": "VIEW RELATED INFORMATION", "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", - "Format": "Not provided", }, ], - "InputGranules": ["S1A_IW_SLC__1SDV_20160825T023743_20160825T023811_012751_014134_F654-SLC"], - "Platforms": [{ "Instruments": [{ "ShortName": "C-SAR", "Characteristics": [{ "Name": "LookDirection", "Value": "RIGHT" }] }], "ShortName": "SENTINEL-1A" }], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20141228T151606_20141228T151629_003921_004B5E_0F12-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, }, "geometry": { "coordinates": - [[[-134.429185, 57.208768], [-133.668191, 57.283638], [-132.947782, 57.349892], [-133.009124, 57.541739], [-133.731915, 57.471188], [-134.49532, 57.391995], [-134.429185, 57.208768]]], + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2367353.87906, -3180519.716445, 5850975.350736], + "prePositionTime": "2014-12-28T15:16:14.000000Z", + "postPosition": + [-2420782.215493, -3215466.757788, 5809963.155155], + "postPositionTime": "2014-12-28T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5353.637371, -3516.480246, -4068.287037], + "preVelocityTime": "2014-12-28T15:16:14.000000", + "postVelocity": [-5331.919441, -3472.867892, -4134.07527], + "postVelocityTime": "2014-12-28T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2014-12-28T14:42:29.095916Z", + "relative_start_time": 2027.387610912323, + "relative_center_time": 2028.9477779865265, + "relative_end_time": 2030.50794506073, + "relative_sv_pre_time": 2024.9040839672089, + "relative_sv_post_time": 2034.9040839672089, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150121T151614_VV_C7F3-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0407_004271_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 4271, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150121T151614_VV_C7F3-BURST", + "sensor": "C-SAR", + "startTime": "2015-01-21T15:16:15.684104Z", + "stopTime": "2015-01-21T15:16:18.804438Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150121T151605_20150121T151628_004271_00531C_C7F3/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20150121T151614_VV_C7F3-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 9172386, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-01-21T15:16:14.532388", + "azimuthAnxTime": "2026.2361076621", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150121T151605_20150121T151628_004271_00531C_C7F3/IW3/VV/3.xml", + ], + "temporalBaseline": -1302, + "perpendicularBaseline": 121, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709347476-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150121T151614_VV_C7F3-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:50.744Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-01-21T15:16:15.684104Z", + "EndingDateTime": "2015-01-21T15:16:18.804438Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 4271 }], + "GranuleUR": "S1_372326_IW3_20150121T151614_VV_C7F3-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-01-21T14:42:28.300784Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2361076621"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-01-21T15:16:14.532388"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["9172386"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["434075451"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0407_004271_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2425117.505432,-3218149.910522,5806684.591606,2015-01-21T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2371707.412585,-3183236.876988,5847749.392126,2015-01-21T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5330.068286,-3469.453339,-4139.317331,2015-01-21T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5351.839831,-3513.093267,-4073.565836,2015-01-21T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:50Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:50Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150121T151605_20150121T151628_004271_00531C_C7F3/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150121T151605_20150121T151628_004271_00531C_C7F3/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150121T151605_20150121T151628_004271_00531C_C7F3-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2371707.412585, -3183236.876988, 5847749.392126], + "prePositionTime": "2015-01-21T15:16:14.000000Z", + "postPosition": + [-2425117.505432, -3218149.910522, 5806684.591606], + "postPositionTime": "2015-01-21T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5351.839831, -3513.093267, -4073.565836], + "preVelocityTime": "2015-01-21T15:16:14.000000", + "postVelocity": [-5330.068286, -3469.453339, -4139.317331], + "postVelocityTime": "2015-01-21T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-01-21T14:42:28.300784Z", + "relative_start_time": 2027.3833198547363, + "relative_center_time": 2028.9434869289398, + "relative_end_time": 2030.5036540031433, + "relative_sv_pre_time": 2025.699215888977, + "relative_sv_post_time": 2035.699215888977, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144671472, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150214T151613_VV_29F3-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0407_004621_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 4621, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150214T151613_VV_29F3-BURST", + "sensor": "C-SAR", + "startTime": "2015-02-14T15:16:15.082664Z", + "stopTime": "2015-02-14T15:16:18.202998Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150214T151604_20150214T151628_004621_005B1B_29F3/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20150214T151613_VV_29F3-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 9924161, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23826, + "subswath": "IW3", + "azimuthTime": "2015-02-14T15:16:13.941211", + "azimuthAnxTime": "2026.2503156621", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150214T151604_20150214T151628_004621_005B1B_29F3/IW3/VV/3.xml", + ], + "temporalBaseline": -1278, + "perpendicularBaseline": -10, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709345163-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150214T151613_VV_29F3-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:36.593Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-02-14T15:16:15.082664Z", + "EndingDateTime": "2015-02-14T15:16:18.202998Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 4621 }], + "GranuleUR": "S1_372326_IW3_20150214T151613_VV_29F3-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-02-14T14:42:27.676433Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2503156621"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-02-14T15:16:13.941211"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["9924161"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144671472"] }, + { "Name": "BYTE_OFFSET", "Values": ["434111883"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0407_004621_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23826"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2428208.103526,-3220331.474364,5804163.719025,2015-02-14T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2374811.125775,-3185444.205249,5845268.264381,2015-02-14T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5328.737406,-3466.865425,-4143.278019,2015-02-14T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5350.547688,-3510.528389,-4077.554051,2015-02-14T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:36Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:36Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150214T151604_20150214T151628_004621_005B1B_29F3/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150214T151604_20150214T151628_004621_005B1B_29F3/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150214T151604_20150214T151628_004621_005B1B_29F3-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2374811.125775, -3185444.205249, 5845268.264381], + "prePositionTime": "2015-02-14T15:16:14.000000Z", + "postPosition": + [-2428208.103526, -3220331.474364, 5804163.719025], + "postPositionTime": "2015-02-14T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5350.547688, -3510.528389, -4077.554051], + "preVelocityTime": "2015-02-14T15:16:14.000000", + "postVelocity": [-5328.737406, -3466.865425, -4143.278019], + "postVelocityTime": "2015-02-14T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-02-14T14:42:27.676433Z", + "relative_start_time": 2027.4062309265137, + "relative_center_time": 2028.9663977622986, + "relative_end_time": 2030.526564836502, + "relative_sv_pre_time": 2026.3235669136047, + "relative_sv_post_time": 2036.3235669136047, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150310T151614_VV_8119-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0407_004971_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 4971, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150310T151614_VV_8119-BURST", + "sensor": "C-SAR", + "startTime": "2015-03-10T15:16:15.347800Z", + "stopTime": "2015-03-10T15:16:18.468134Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150310T151604_20150310T151628_004971_00638B_8119/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20150310T151614_VV_8119-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 10675936, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-03-10T15:16:14.196086", + "azimuthAnxTime": "2026.237059331", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150310T151604_20150310T151628_004971_00638B_8119/IW3/VV/3.xml", + ], + "temporalBaseline": -1254, + "perpendicularBaseline": 5, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709349358-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150310T151614_VV_8119-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:09:13.331Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-03-10T15:16:15.347800Z", + "EndingDateTime": "2015-03-10T15:16:18.468134Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 4971 }], + "GranuleUR": "S1_372326_IW3_20150310T151614_VV_8119-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-03-10T14:42:27.963419Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.237059331"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-03-10T15:16:14.196086"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["10675936"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["434075451"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0407_004971_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2426819.616654,-3219393.369841,5805250.68825,2015-03-10T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2373416.2273,-3184495.353309,5846337.828938,2015-03-10T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5329.387125,-3467.944913,-4141.543774,2015-03-10T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5351.180335,-3511.598364,-4075.807431,2015-03-10T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:09:12Z" }, + { "Type": "Update", "Date": "2023-06-16T01:09:12Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150310T151604_20150310T151628_004971_00638B_8119/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150310T151604_20150310T151628_004971_00638B_8119/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150310T151604_20150310T151628_004971_00638B_8119-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": [-2373416.2273, -3184495.353309, 5846337.828938], + "prePositionTime": "2015-03-10T15:16:14.000000Z", + "postPosition": + [-2426819.616654, -3219393.369841, 5805250.68825], + "postPositionTime": "2015-03-10T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5351.180335, -3511.598364, -4075.807431], + "preVelocityTime": "2015-03-10T15:16:14.000000", + "postVelocity": [-5329.387125, -3467.944913, -4141.543774], + "postVelocityTime": "2015-03-10T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-03-10T14:42:27.963419Z", + "relative_start_time": 2027.384381055832, + "relative_center_time": 2028.9445481300354, + "relative_end_time": 2030.5047149658203, + "relative_sv_pre_time": 2026.0365810394287, + "relative_sv_post_time": 2036.0365810394287, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150403T151614_VV_852D-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0407_005321_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 5321, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150403T151614_VV_852D-BURST", + "sensor": "C-SAR", + "startTime": "2015-04-03T15:16:15.869865Z", + "stopTime": "2015-04-03T15:16:18.990199Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150403T151605_20150403T151628_005321_006BC9_852D/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20150403T151614_VV_852D-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 11427711, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-04-03T15:16:14.703761", + "azimuthAnxTime": "2026.2254284369", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150403T151605_20150403T151628_005321_006BC9_852D/IW3/VV/3.xml", + ], + "temporalBaseline": -1230, + "perpendicularBaseline": 98, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348357-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150403T151614_VV_852D-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:21.573Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-04-03T15:16:15.869865Z", + "EndingDateTime": "2015-04-03T15:16:18.990199Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 5321 }], + "GranuleUR": "S1_372326_IW3_20150403T151614_VV_852D-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-04-03T14:42:28.478608Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2254284369"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-04-03T15:16:14.703761"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["11427711"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["434075451"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0407_005321_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2424109.417394,-3217494.308118,5807430.757831,2015-04-03T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2370695.609585,-3182572.479499,5848483.77514,2015-04-03T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5330.445931,-3470.336057,-4138.143609,2015-04-03T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5352.205211,-3513.969557,-4072.382972,2015-04-03T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:21Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:21Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150403T151605_20150403T151628_005321_006BC9_852D/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150403T151605_20150403T151628_005321_006BC9_852D/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150403T151605_20150403T151628_005321_006BC9_852D-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2370695.609585, -3182572.479499, 5848483.77514], + "prePositionTime": "2015-04-03T15:16:14.000000Z", + "postPosition": + [-2424109.417394, -3217494.308118, 5807430.757831], + "postPositionTime": "2015-04-03T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5352.205211, -3513.969557, -4072.382972], + "preVelocityTime": "2015-04-03T15:16:14.000000", + "postVelocity": [-5330.445931, -3470.336057, -4138.143609], + "postVelocityTime": "2015-04-03T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-04-03T14:42:28.478608Z", + "relative_start_time": 2027.3912570476532, + "relative_center_time": 2028.9514241218567, + "relative_end_time": 2030.5115911960602, + "relative_sv_pre_time": 2025.52139210701, + "relative_sv_post_time": 2035.52139210701, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144671472, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150427T151616_VV_F3D0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0407_005671_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 5671, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150427T151616_VV_F3D0-BURST", + "sensor": "C-SAR", + "startTime": "2015-04-27T15:16:17.139533Z", + "stopTime": "2015-04-27T15:16:20.259867Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150427T151606_20150427T151630_005671_007462_F3D0/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20150427T151616_VV_F3D0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 12179485, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23826, + "subswath": "IW3", + "azimuthTime": "2015-04-27T15:16:16.002192", + "azimuthAnxTime": "2026.2506625495", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150427T151606_20150427T151630_005671_007462_F3D0/IW3/VV/3.xml", + ], + "temporalBaseline": -1206, + "perpendicularBaseline": 14, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348377-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150427T151616_VV_F3D0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:32.788Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-04-27T15:16:17.139533Z", + "EndingDateTime": "2015-04-27T15:16:20.259867Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 5671 }], + "GranuleUR": "S1_372326_IW3_20150427T151616_VV_F3D0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-04-27T14:42:29.753331Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2506625495"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-04-27T15:16:16.002192"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["12179485"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144671472"] }, + { "Name": "BYTE_OFFSET", "Values": ["434111883"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0407_005671_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23826"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2417271.916457,-3213170.277807,5812660.17875,2015-04-27T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2363829.382607,-3178194.254062,5853629.419631,2015-04-27T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5333.360873,-3475.777853,-4129.79518,2015-04-27T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5355.035389,-3519.366671,-4063.976248,2015-04-27T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:32Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:32Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150427T151606_20150427T151630_005671_007462_F3D0/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150427T151606_20150427T151630_005671_007462_F3D0/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150427T151606_20150427T151630_005671_007462_F3D0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2363829.382607, -3178194.254062, 5853629.419631], + "prePositionTime": "2015-04-27T15:16:14.000000Z", + "postPosition": + [-2417271.916457, -3213170.277807, 5812660.17875], + "postPositionTime": "2015-04-27T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5355.035389, -3519.366671, -4063.976248], + "preVelocityTime": "2015-04-27T15:16:14.000000", + "postVelocity": [-5333.360873, -3475.777853, -4129.79518], + "postVelocityTime": "2015-04-27T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-04-27T14:42:29.753331Z", + "relative_start_time": 2027.386202096939, + "relative_center_time": 2028.946368932724, + "relative_end_time": 2030.5065360069275, + "relative_sv_pre_time": 2024.2466690540314, + "relative_sv_post_time": 2034.2466690540314, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150521T151617_VV_5927-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_006021_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 6021, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150521T151617_VV_5927-BURST", + "sensor": "C-SAR", + "startTime": "2015-05-21T15:16:18.351722Z", + "stopTime": "2015-05-21T15:16:21.472056Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150521T151607_20150521T151631_006021_007C45_5927/IW3/VV/3.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20150521T151617_VV_5927-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 12931260, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-05-21T15:16:17.218506", + "azimuthAnxTime": "2026.2491138873", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150521T151607_20150521T151631_006021_007C45_5927/IW3/VV/3.xml", + ], + "temporalBaseline": -1182, + "perpendicularBaseline": 22, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709345564-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150521T151617_VV_5927-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:32.546Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-05-21T15:16:18.351722Z", + "EndingDateTime": "2015-05-21T15:16:21.472056Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 6021 }], + "GranuleUR": "S1_372326_IW3_20150521T151617_VV_5927-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-05-21T14:42:31.066788Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2491138873"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-05-21T15:16:17.218506"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["12931260"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["434075451"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_006021_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2410796.973961,-3208962.949944,5817680.126403,2015-05-21T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2357328.818215,-3173933.325599,5858569.298546,2015-05-21T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5335.963435,-3481.159906,-4121.816136,2015-05-21T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5357.557176,-3524.704657,-4055.941719,2015-05-21T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:32Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:32Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150521T151607_20150521T151631_006021_007C45_5927/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150521T151607_20150521T151631_006021_007C45_5927/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150521T151607_20150521T151631_006021_007C45_5927-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2357328.818215, -3173933.325599, 5858569.298546], + "prePositionTime": "2015-05-21T15:16:14.000000Z", + "postPosition": + [-2410796.973961, -3208962.949944, 5817680.126403], + "postPositionTime": "2015-05-21T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5357.557176, -3524.704657, -4055.941719], + "preVelocityTime": "2015-05-21T15:16:14.000000", + "postVelocity": [-5335.963435, -3481.159906, -4121.816136], + "postVelocityTime": "2015-05-21T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-05-21T14:42:31.066788Z", + "relative_start_time": 2027.2849340438843, + "relative_center_time": 2028.8451011180878, + "relative_end_time": 2030.4052679538727, + "relative_sv_pre_time": 2022.9332120418549, + "relative_sv_post_time": 2032.9332120418549, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144665400, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150614T151618_VV_85AF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_006371_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 6371, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150614T151618_VV_85AF-BURST", + "sensor": "C-SAR", + "startTime": "2015-06-14T15:16:20.053535Z", + "stopTime": "2015-06-14T15:16:23.173869Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150614T151609_20150614T151633_006371_008650_85AF/IW3/VV/3.tiff", + "pgeVersion": "002.43", + "fileName": "S1_372326_IW3_20150614T151618_VV_85AF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 13683035, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23825, + "subswath": "IW3", + "azimuthTime": "2015-06-14T15:16:18.893297", + "azimuthAnxTime": "2026.226496605957", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150614T151609_20150614T151633_006371_008650_85AF/IW3/VV/3.xml", + ], + "temporalBaseline": -1158, + "perpendicularBaseline": 149, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348019-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150614T151618_VV_85AF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:35.433Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-06-14T15:16:20.053535Z", + "EndingDateTime": "2015-06-14T15:16:23.173869Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 6371 }], + "GranuleUR": "S1_372326_IW3_20150614T151618_VV_85AF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-06-14T14:42:32.670649Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.226496605957"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-06-14T15:16:18.893297"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["13683035"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144665400"] }, + { "Name": "BYTE_OFFSET", "Values": ["433996208"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_006371_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23825"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2401831.09476,-3202921.762793,5824693.551083,2015-06-14T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2348326.156849,-3167818.709613,5865470.788184,2015-06-14T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5339.69736,-3488.534129,-4110.661865,2015-06-14T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5361.179657,-3532.01602,-4044.709195,2015-06-14T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:35Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:35Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.43" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150614T151609_20150614T151633_006371_008650_85AF/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150614T151609_20150614T151633_006371_008650_85AF/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150614T151609_20150614T151633_006371_008650_85AF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2348326.156849, -3167818.709613, 5865470.788184], + "prePositionTime": "2015-06-14T15:16:14.000000Z", + "postPosition": + [-2401831.09476, -3202921.762793, 5824693.551083], + "postPositionTime": "2015-06-14T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5361.179657, -3532.01602, -4044.709195], + "preVelocityTime": "2015-06-14T15:16:14.000000", + "postVelocity": [-5339.69736, -3488.534129, -4110.661865], + "postVelocityTime": "2015-06-14T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2015-06-14T14:42:32.670649Z", + "relative_start_time": 2027.3828859329224, + "relative_center_time": 2028.9430527687073, + "relative_end_time": 2030.5032198429108, + "relative_sv_pre_time": 2021.3293509483337, + "relative_sv_post_time": 2031.3293509483337, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150708T151618_VV_F330-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_006721_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 6721, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150708T151618_VV_F330-BURST", + "sensor": "C-SAR", + "startTime": "2015-07-08T15:16:20.056449Z", + "stopTime": "2015-07-08T15:16:23.176783Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150708T151609_20150708T151633_006721_008FF5_F330/IW3/VV/3.tiff", + "pgeVersion": "002.51", + "fileName": "S1_372326_IW3_20150708T151618_VV_F330-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 14434810, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-07-08T15:16:18.912639", + "azimuthAnxTime": "2026.2386822184", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150708T151609_20150708T151633_006721_008FF5_F330/IW3/VV/3.xml", + ], + "temporalBaseline": -1134, + "perpendicularBaseline": -101, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709344851-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150708T151618_VV_F330-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:48.765Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-07-08T15:16:20.056449Z", + "EndingDateTime": "2015-07-08T15:16:23.176783Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 6721 }], + "GranuleUR": "S1_372326_IW3_20150708T151618_VV_F330-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-07-08T14:42:32.658086Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2386822184"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-07-08T15:16:18.912639"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["14434810"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["433977984"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_006721_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2396259.834907,-3199596.516078,5828741.628487,2015-07-08T15:16:23.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2342733.577323,-3164448.664712,5869453.088428,2015-07-08T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5341.863573,-3493.030737,-4104.107485,2015-07-08T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5363.277303,-3536.478928,-4038.108242,2015-07-08T15:16:13.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:48Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:48Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.51" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150708T151609_20150708T151633_006721_008FF5_F330/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150708T151609_20150708T151633_006721_008FF5_F330/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150708T151609_20150708T151633_006721_008FF5_F330-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2342733.577323, -3164448.664712, 5869453.088428], + "prePositionTime": "2015-07-08T15:16:13.000000Z", + "postPosition": + [-2396259.834907, -3199596.516078, 5828741.628487], + "postPositionTime": "2015-07-08T15:16:23.000000Z", + }, + "velocities": + { + "preVelocity": [-5363.277303, -3536.478928, -4038.108242], + "preVelocityTime": "2015-07-08T15:16:13.000000", + "postVelocity": [-5341.863573, -3493.030737, -4104.107485], + "postVelocityTime": "2015-07-08T15:16:23.000000", + }, + }, + "ascendingNodeTime": "2015-07-08T14:42:32.658086Z", + "relative_start_time": 2027.3983628749847, + "relative_center_time": 2028.9585299491882, + "relative_end_time": 2030.5186970233917, + "relative_sv_pre_time": 2020.3419139385223, + "relative_sv_post_time": 2030.3419139385223, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150801T151620_VV_3C3B-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0404_0408_007071_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7071, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150801T151620_VV_3C3B-BURST", + "sensor": "C-SAR", + "startTime": "2015-08-01T15:16:21.907462Z", + "stopTime": "2015-08-01T15:16:25.027796Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150801T151611_20150801T151634_007071_0099F3_3C3B/IW3/VV/3.tiff", + "pgeVersion": "002.53", + "fileName": "S1_372326_IW3_20150801T151620_VV_3C3B-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 15186584, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-08-01T15:16:20.767778", + "azimuthAnxTime": "2026.2360061058", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150801T151611_20150801T151634_007071_0099F3_3C3B/IW3/VV/3.xml", + ], + "temporalBaseline": -1110, + "perpendicularBaseline": 111, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709344097-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150801T151620_VV_3C3B-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:03.341Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-08-01T15:16:21.907462Z", + "EndingDateTime": "2015-08-01T15:16:25.027796Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7071 }], + "GranuleUR": "S1_372326_IW3_20150801T151620_VV_3C3B-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-08-01T14:42:34.515790Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2360061058"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-08-01T15:16:20.767778"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["15186584"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["433977984"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0404_0408_007071_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2439921.51165,-3227737.254324,5795127.39263,2015-08-01T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2386571.928214,-3192945.214393,5836374.863586,2015-08-01T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5323.925124,-3457.304082,-4157.520363,2015-08-01T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5345.881184,-3501.044153,-4091.896583,2015-08-01T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.53" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150801T151611_20150801T151634_007071_0099F3_3C3B/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150801T151611_20150801T151634_007071_0099F3_3C3B/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150801T151611_20150801T151634_007071_0099F3_3C3B-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2386571.928214, -3192945.214393, 5836374.863586], + "prePositionTime": "2015-08-01T15:16:23.000000Z", + "postPosition": + [-2439921.51165, -3227737.254324, 5795127.39263], + "postPositionTime": "2015-08-01T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5345.881184, -3501.044153, -4091.896583], + "preVelocityTime": "2015-08-01T15:16:23.000000", + "postVelocity": [-5323.925124, -3457.304082, -4157.520363], + "postVelocityTime": "2015-08-01T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-08-01T14:42:34.515790Z", + "relative_start_time": 2027.3916718959808, + "relative_center_time": 2028.9518389701843, + "relative_end_time": 2030.5120060443878, + "relative_sv_pre_time": 2028.4842100143433, + "relative_sv_post_time": 2038.4842100143433, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150825T151622_VV_1CB9-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0404_0409_007421_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7421, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150825T151622_VV_1CB9-BURST", + "sensor": "C-SAR", + "startTime": "2015-08-25T15:16:23.155387Z", + "stopTime": "2015-08-25T15:16:26.275721Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150825T151612_20150825T151636_007421_00A372_1CB9/IW3/VV/3.tiff", + "pgeVersion": "002.53", + "fileName": "S1_372326_IW3_20150825T151622_VV_1CB9-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 15938359, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-08-25T15:16:22.001300", + "azimuthAnxTime": "2026.2231197747", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150825T151612_20150825T151636_007421_00A372_1CB9/IW3/VV/3.xml", + ], + "temporalBaseline": -1086, + "perpendicularBaseline": 54, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709343072-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150825T151622_VV_1CB9-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:07:40.030Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-08-25T15:16:23.155387Z", + "EndingDateTime": "2015-08-25T15:16:26.275721Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7421 }], + "GranuleUR": "S1_372326_IW3_20150825T151622_VV_1CB9-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-08-25T14:42:35.778180Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2231197747"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-08-25T15:16:22.001300"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["15938359"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["433977984"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0404_0409_007421_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2433240.720315,-3223458.303517,5800278.38407,2015-08-25T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2379863.038745,-3188612.489766,5841444.125605,2015-08-25T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5326.77629,-3462.703367,-4149.376504,2015-08-25T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5348.649645,-3506.399478,-4083.694724,2015-08-25T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:07:39Z" }, + { "Type": "Update", "Date": "2023-06-16T01:07:39Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.53" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150825T151612_20150825T151636_007421_00A372_1CB9/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150825T151612_20150825T151636_007421_00A372_1CB9/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150825T151612_20150825T151636_007421_00A372_1CB9-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2379863.038745, -3188612.489766, 5841444.125605], + "prePositionTime": "2015-08-25T15:16:23.000000Z", + "postPosition": + [-2433240.720315, -3223458.303517, 5800278.38407], + "postPositionTime": "2015-08-25T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5348.649645, -3506.399478, -4083.694724], + "preVelocityTime": "2015-08-25T15:16:23.000000", + "postVelocity": [-5326.77629, -3462.703367, -4149.376504], + "postVelocityTime": "2015-08-25T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-08-25T14:42:35.778180Z", + "relative_start_time": 2027.3772070407867, + "relative_center_time": 2028.9373741149902, + "relative_end_time": 2030.4975411891937, + "relative_sv_pre_time": 2027.221820116043, + "relative_sv_post_time": 2037.221820116043, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20150918T151622_VV_C604-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0404_0409_007771_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7771, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20150918T151622_VV_C604-BURST", + "sensor": "C-SAR", + "startTime": "2015-09-18T15:16:23.861457Z", + "stopTime": "2015-09-18T15:16:26.981791Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150918T151613_20150918T151636_007771_00ACE3_C604/IW3/VV/3.tiff", + "pgeVersion": "002.53", + "fileName": "S1_372326_IW3_20150918T151622_VV_C604-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 16690134, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-09-18T15:16:22.707386", + "azimuthAnxTime": "2026.2206117747", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150918T151613_20150918T151636_007771_00ACE3_C604/IW3/VV/3.xml", + ], + "temporalBaseline": -1062, + "perpendicularBaseline": -4, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709343197-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20150918T151622_VV_C604-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:36.922Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-09-18T15:16:23.861457Z", + "EndingDateTime": "2015-09-18T15:16:26.981791Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7771 }], + "GranuleUR": "S1_372326_IW3_20150918T151622_VV_C604-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-09-18T14:42:36.476701Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2206117747"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-09-18T15:16:22.707386"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["16690134"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["433977984"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0404_0409_007771_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2429427.019594,-3221057.658696,5803194.257489,2015-09-18T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2376034.177589,-3186180.399988,5844313.645148,2015-09-18T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5328.315988,-3465.860223,-4144.757502,2015-09-18T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5350.14197,-3509.53153,-4079.043013,2015-09-18T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:36Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:36Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.53" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150918T151613_20150918T151636_007771_00ACE3_C604/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20150918T151613_20150918T151636_007771_00ACE3_C604/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20150918T151613_20150918T151636_007771_00ACE3_C604-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2376034.177589, -3186180.399988, 5844313.645148], + "prePositionTime": "2015-09-18T15:16:23.000000Z", + "postPosition": + [-2429427.019594, -3221057.658696, 5803194.257489], + "postPositionTime": "2015-09-18T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5350.14197, -3509.53153, -4079.043013], + "preVelocityTime": "2015-09-18T15:16:23.000000", + "postVelocity": [-5328.315988, -3465.860223, -4144.757502], + "postVelocityTime": "2015-09-18T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-09-18T14:42:36.476701Z", + "relative_start_time": 2027.3847560882568, + "relative_center_time": 2028.9449231624603, + "relative_end_time": 2030.5050899982452, + "relative_sv_pre_time": 2026.5232989788055, + "relative_sv_post_time": 2036.5232989788055, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144671472, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20151012T151623_VV_2B80-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0404_0409_008121_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8121, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20151012T151623_VV_2B80-BURST", + "sensor": "C-SAR", + "startTime": "2015-10-12T15:16:24.392615Z", + "stopTime": "2015-10-12T15:16:27.512949Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151012T151614_20151012T151637_008121_00B63F_2B80/IW3/VV/3.tiff", + "pgeVersion": "002.53", + "fileName": "S1_372326_IW3_20151012T151623_VV_2B80-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 17441909, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 3, + "samplesPerBurst": 23826, + "subswath": "IW3", + "azimuthTime": "2015-10-12T15:16:23.250876", + "azimuthAnxTime": "2026.2388651058", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151012T151614_20151012T151637_008121_00B63F_2B80/IW3/VV/3.xml", + ], + "temporalBaseline": -1038, + "perpendicularBaseline": 91, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348401-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20151012T151623_VV_2B80-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:51.638Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-10-12T15:16:24.392615Z", + "EndingDateTime": "2015-10-12T15:16:27.512949Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8121 }], + "GranuleUR": "S1_372326_IW3_20151012T151623_VV_2B80-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-10-12T14:42:36.996173Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2388651058"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-10-12T15:16:23.250876"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["17441909"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["3"] }, + { "Name": "BYTE_LENGTH", "Values": ["144671472"] }, + { "Name": "BYTE_OFFSET", "Values": ["434014416"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0404_0409_008121_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23826"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2426666.907854,-3219155.410604,5805433.853291,2015-10-12T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2373263.154354,-3184254.679952,5846518.233664,2015-10-12T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5329.424509,-3468.217578,-4141.268902,2015-10-12T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5351.215729,-3511.868543,-4075.530238,2015-10-12T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:51Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:51Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.53" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151012T151614_20151012T151637_008121_00B63F_2B80/IW3/VV/3.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151012T151614_20151012T151637_008121_00B63F_2B80/IW3/VV/3.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20151012T151614_20151012T151637_008121_00B63F_2B80-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2373263.154354, -3184254.679952, 5846518.233664], + "prePositionTime": "2015-10-12T15:16:23.000000Z", + "postPosition": + [-2426666.907854, -3219155.410604, 5805433.853291], + "postPositionTime": "2015-10-12T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5351.215729, -3511.868543, -4075.530238], + "preVelocityTime": "2015-10-12T15:16:23.000000", + "postVelocity": [-5329.424509, -3468.217578, -4141.268902], + "postVelocityTime": "2015-10-12T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-10-12T14:42:36.996173Z", + "relative_start_time": 2027.3964421749115, + "relative_center_time": 2028.956609249115, + "relative_end_time": 2030.5167760849, + "relative_sv_pre_time": 2026.0038270950317, + "relative_sv_post_time": 2036.0038270950317, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144252504, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20151105T151622_VV_8B17-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0409_008471_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8471, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20151105T151622_VV_8B17-BURST", + "sensor": "C-SAR", + "startTime": "2015-11-05T15:16:24.080280Z", + "stopTime": "2015-11-05T15:16:27.200614Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151105T151600_20151105T151636_008471_00BFA1_8B17/IW3/VV/8.tiff", + "pgeVersion": "002.53", + "fileName": "S1_372326_IW3_20151105T151622_VV_8B17-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 18193683, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 8, + "samplesPerBurst": 23757, + "subswath": "IW3", + "azimuthTime": "2015-11-05T15:16:22.931449", + "azimuthAnxTime": "2026.2450773225", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151105T151600_20151105T151636_008471_00BFA1_8B17/IW3/VV/8.xml", + ], + "temporalBaseline": -1014, + "perpendicularBaseline": -28, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709344050-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20151105T151622_VV_8B17-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:06:34.823Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-11-05T15:16:24.080280Z", + "EndingDateTime": "2015-11-05T15:16:27.200614Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8471 }], + "GranuleUR": "S1_372326_IW3_20151105T151622_VV_8B17-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-11-05T14:42:36.676425Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2450773225"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-11-05T15:16:22.931449"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["18193683"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["8"] }, + { "Name": "BYTE_LENGTH", "Values": ["144252504"] }, + { "Name": "BYTE_OFFSET", "Values": ["1154020032"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0409_008471_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23757"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2428218.598557,-3220381.943328,5804151.108031,2015-11-05T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2374821.205323,-3185495.670877,5845255.706293,2015-11-05T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5328.778935,-3466.765583,-4143.283032,2015-11-05T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5350.589292,-3510.428922,-4077.559659,2015-11-05T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:06:34Z" }, + { "Type": "Update", "Date": "2023-06-16T01:06:34Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.53" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151105T151600_20151105T151636_008471_00BFA1_8B17/IW3/VV/8.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151105T151600_20151105T151636_008471_00BFA1_8B17/IW3/VV/8.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20151105T151600_20151105T151636_008471_00BFA1_8B17-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2374821.205323, -3185495.670877, 5845255.706293], + "prePositionTime": "2015-11-05T15:16:23.000000Z", + "postPosition": + [-2428218.598557, -3220381.943328, 5804151.108031], + "postPositionTime": "2015-11-05T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5350.589292, -3510.428922, -4077.559659], + "preVelocityTime": "2015-11-05T15:16:23.000000", + "postVelocity": [-5328.778935, -3466.765583, -4143.283032], + "postVelocityTime": "2015-11-05T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-11-05T14:42:36.676425Z", + "relative_start_time": 2027.403855085373, + "relative_center_time": 2028.9640221595764, + "relative_end_time": 2030.5241889953613, + "relative_sv_pre_time": 2026.3235750198364, + "relative_sv_post_time": 2036.3235750198364, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20151129T151622_VV_32FD-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_008821_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8821, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20151129T151622_VV_32FD-BURST", + "sensor": "C-SAR", + "startTime": "2015-11-29T15:16:23.639501Z", + "stopTime": "2015-11-29T15:16:26.759835Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151129T151607_20151129T151631_008821_00C966_32FD/IW3/VV/5.tiff", + "pgeVersion": "002.60", + "fileName": "S1_372326_IW3_20151129T151622_VV_32FD-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 18945458, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-11-29T15:16:22.486288", + "azimuthAnxTime": "2026.2463551024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151129T151607_20151129T151631_008821_00C966_32FD/IW3/VV/5.xml", + ], + "temporalBaseline": -990, + "perpendicularBaseline": 115, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348127-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20151129T151622_VV_32FD-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:03.496Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-11-29T15:16:23.639501Z", + "EndingDateTime": "2015-11-29T15:16:26.759835Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8821 }], + "GranuleUR": "S1_372326_IW3_20151129T151622_VV_32FD-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-11-29T14:42:36.271402Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2463551024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-11-29T15:16:22.486288"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["18945458"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_008821_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2430681.539666,-3221791.358176,5802363.556307,2015-11-29T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2377294.098971,-3186924.441284,5843497.086428,2015-11-29T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5327.768533,-3464.822913,-4146.165959,2015-11-29T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5349.609183,-3508.500483,-4080.463007,2015-11-29T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.60" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151129T151607_20151129T151631_008821_00C966_32FD/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151129T151607_20151129T151631_008821_00C966_32FD/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20151129T151607_20151129T151631_008821_00C966_32FD-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2377294.098971, -3186924.441284, 5843497.086428], + "prePositionTime": "2015-11-29T15:16:23.000000Z", + "postPosition": + [-2430681.539666, -3221791.358176, 5802363.556307], + "postPositionTime": "2015-11-29T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5349.609183, -3508.500483, -4080.463007], + "preVelocityTime": "2015-11-29T15:16:23.000000", + "postVelocity": [-5327.768533, -3464.822913, -4146.165959], + "postVelocityTime": "2015-11-29T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-11-29T14:42:36.271402Z", + "relative_start_time": 2027.3680992126465, + "relative_center_time": 2028.9282660484314, + "relative_end_time": 2030.488433122635, + "relative_sv_pre_time": 2026.7285981178284, + "relative_sv_post_time": 2036.7285981178284, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20151223T151621_VV_718B-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0406_009171_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 9171, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20151223T151621_VV_718B-BURST", + "sensor": "C-SAR", + "startTime": "2015-12-23T15:16:22.668050Z", + "stopTime": "2015-12-23T15:16:25.788384Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151223T151606_20151223T151630_009171_00D33B_718B/IW3/VV/5.tiff", + "pgeVersion": "002.60", + "fileName": "S1_372326_IW3_20151223T151621_VV_718B-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 19697233, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2015-12-23T15:16:21.512766", + "azimuthAnxTime": "2026.2515006587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151223T151606_20151223T151630_009171_00D33B_718B/IW3/VV/5.xml", + ], + "temporalBaseline": -966, + "perpendicularBaseline": 107, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709345019-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20151223T151621_VV_718B-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:05:06.411Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2015-12-23T15:16:22.668050Z", + "EndingDateTime": "2015-12-23T15:16:25.788384Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 9171 }], + "GranuleUR": "S1_372326_IW3_20151223T151621_VV_718B-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2015-12-23T14:42:35.292982Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2515006587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2015-12-23T15:16:21.512766"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["19697233"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0406_009171_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2435832.736331,-3225161.299791,5798349.5126,2015-12-23T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2382467.527527,-3190335.772057,5839546.939141,2015-12-23T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5325.513424,-3460.6667,-4152.53306,2015-12-23T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5347.417928,-3504.378976,-4086.875087,2015-12-23T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:05:06Z" }, + { "Type": "Update", "Date": "2023-06-16T01:05:06Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.60" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151223T151606_20151223T151630_009171_00D33B_718B/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20151223T151606_20151223T151630_009171_00D33B_718B/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20151223T151606_20151223T151630_009171_00D33B_718B-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2382467.527527, -3190335.772057, 5839546.939141], + "prePositionTime": "2015-12-23T15:16:23.000000Z", + "postPosition": + [-2435832.736331, -3225161.299791, 5798349.5126], + "postPositionTime": "2015-12-23T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5347.417928, -3504.378976, -4086.875087], + "preVelocityTime": "2015-12-23T15:16:23.000000", + "postVelocity": [-5325.513424, -3460.6667, -4152.53306], + "postVelocityTime": "2015-12-23T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2015-12-23T14:42:35.292982Z", + "relative_start_time": 2027.375067949295, + "relative_center_time": 2028.9352350234985, + "relative_end_time": 2030.4954018592834, + "relative_sv_pre_time": 2027.7070178985596, + "relative_sv_post_time": 2037.7070178985596, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160304T151620_VV_DEFF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0406_010221_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10221, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160304T151620_VV_DEFF-BURST", + "sensor": "C-SAR", + "startTime": "2016-03-04T15:16:21.460866Z", + "stopTime": "2016-03-04T15:16:24.581200Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160304T151605_20160304T151628_010221_00F17F_DEFF/IW3/VV/5.tiff", + "pgeVersion": "002.60", + "fileName": "S1_372326_IW3_20160304T151620_VV_DEFF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 21952557, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-03-04T15:16:20.313822", + "azimuthAnxTime": "2026.2397216587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160304T151605_20160304T151628_010221_00F17F_DEFF/IW3/VV/5.xml", + ], + "temporalBaseline": -894, + "perpendicularBaseline": 26, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348432-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160304T151620_VV_DEFF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:23.893Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-03-04T15:16:21.460866Z", + "EndingDateTime": "2016-03-04T15:16:24.581200Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10221 }], + "GranuleUR": "S1_372326_IW3_20160304T151620_VV_DEFF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-03-04T14:42:34.078827Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2397216587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-03-04T15:16:20.313822"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["21952557"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0406_010221_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2442214.379246,-3229364.742526,5793271.896059,2016-03-04T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2388874.072615,-3194592.971536,5834548.548883,2016-03-04T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5322.983156,-3455.268741,-4160.42803,2016-03-04T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5344.967816,-3499.025691,-4094.825223,2016-03-04T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:23Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:23Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.60" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160304T151605_20160304T151628_010221_00F17F_DEFF/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160304T151605_20160304T151628_010221_00F17F_DEFF/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160304T151605_20160304T151628_010221_00F17F_DEFF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2388874.072615, -3194592.971536, 5834548.548883], + "prePositionTime": "2016-03-04T15:16:23.000000Z", + "postPosition": + [-2442214.379246, -3229364.742526, 5793271.896059], + "postPositionTime": "2016-03-04T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5344.967816, -3499.025691, -4094.825223], + "preVelocityTime": "2016-03-04T15:16:23.000000", + "postVelocity": [-5322.983156, -3455.268741, -4160.42803], + "postVelocityTime": "2016-03-04T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-03-04T14:42:34.078827Z", + "relative_start_time": 2027.3820390701294, + "relative_center_time": 2028.9422059059143, + "relative_end_time": 2030.5023729801178, + "relative_sv_pre_time": 2028.9211730957031, + "relative_sv_post_time": 2038.9211730957031, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160421T151621_VV_05A1-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0406_010921_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10921, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160421T151621_VV_05A1-BURST", + "sensor": "C-SAR", + "startTime": "2016-04-21T15:16:22.781698Z", + "stopTime": "2016-04-21T15:16:25.902032Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160421T151606_20160421T151630_010921_0105F6_05A1/IW3/VV/5.tiff", + "pgeVersion": "002.70", + "fileName": "S1_372326_IW3_20160421T151621_VV_05A1-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 23456107, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-04-21T15:16:21.622320", + "azimuthAnxTime": "2026.2080299898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160421T151606_20160421T151630_010921_0105F6_05A1/IW3/VV/5.xml", + ], + "temporalBaseline": -846, + "perpendicularBaseline": 81, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709344860-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160421T151621_VV_05A1-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:39.594Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-04-21T15:16:22.781698Z", + "EndingDateTime": "2016-04-21T15:16:25.902032Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10921 }], + "GranuleUR": "S1_372326_IW3_20160421T151621_VV_05A1-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-04-21T14:42:35.418916Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2080299898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-04-21T15:16:21.622320"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["23456107"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0406_010921_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2435230.297478,-3224718.345498,5798754.022248,2016-04-21T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2381861.577014,-3189887.551954,5839943.992132,2016-04-21T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5325.867948,-3461.194923,-4151.790729,2016-04-21T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5347.765794,-3504.903885,-4086.126112,2016-04-21T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:39Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:39Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.70" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160421T151606_20160421T151630_010921_0105F6_05A1/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160421T151606_20160421T151630_010921_0105F6_05A1/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160421T151606_20160421T151630_010921_0105F6_05A1-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2381861.577014, -3189887.551954, 5839943.992132], + "prePositionTime": "2016-04-21T15:16:23.000000Z", + "postPosition": + [-2435230.297478, -3224718.345498, 5798754.022248], + "postPositionTime": "2016-04-21T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5347.765794, -3504.903885, -4086.126112], + "preVelocityTime": "2016-04-21T15:16:23.000000", + "postVelocity": [-5325.867948, -3461.194923, -4151.790729], + "postVelocityTime": "2016-04-21T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-04-21T14:42:35.418916Z", + "relative_start_time": 2027.3627820014954, + "relative_center_time": 2028.9229490756989, + "relative_end_time": 2030.4831159114838, + "relative_sv_pre_time": 2027.5810840129852, + "relative_sv_post_time": 2037.5810840129852, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160515T151622_VV_974A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_011271_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11271, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160515T151622_VV_974A-BURST", + "sensor": "C-SAR", + "startTime": "2016-05-15T15:16:24.133504Z", + "stopTime": "2016-05-15T15:16:27.253838Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160515T151608_20160515T151631_011271_011110_974A/IW3/VV/5.tiff", + "pgeVersion": "002.71", + "fileName": "S1_372326_IW3_20160515T151622_VV_974A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 24207881, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-05-15T15:16:22.990569", + "azimuthAnxTime": "2026.2269085528", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160515T151608_20160515T151631_011271_011110_974A/IW3/VV/5.xml", + ], + "temporalBaseline": -822, + "perpendicularBaseline": -10, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709345135-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160515T151622_VV_974A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:31.303Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-05-15T15:16:24.133504Z", + "EndingDateTime": "2016-05-15T15:16:27.253838Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11271 }], + "GranuleUR": "S1_372326_IW3_20160515T151622_VV_974A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-05-15T14:42:36.796774Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2269085528"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-05-15T15:16:22.990569"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["24207881"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_011271_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2427954.162765,-3220119.829321,5804339.760508,2016-05-15T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2374555.145205,-3185230.809777,5845440.886271,2016-05-15T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5328.942738,-3467.041207,-4142.937585,2016-05-15T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5350.750346,-3510.702668,-4077.210585,2016-05-15T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:31Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:31Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.71" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160515T151608_20160515T151631_011271_011110_974A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160515T151608_20160515T151631_011271_011110_974A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160515T151608_20160515T151631_011271_011110_974A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2374555.145205, -3185230.809777, 5845440.886271], + "prePositionTime": "2016-05-15T15:16:23.000000Z", + "postPosition": + [-2427954.162765, -3220119.829321, 5804339.760508], + "postPositionTime": "2016-05-15T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5350.750346, -3510.702668, -4077.210585], + "preVelocityTime": "2016-05-15T15:16:23.000000", + "postVelocity": [-5328.942738, -3467.041207, -4142.937585], + "postVelocityTime": "2016-05-15T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-05-15T14:42:36.796774Z", + "relative_start_time": 2027.336730003357, + "relative_center_time": 2028.8968970775604, + "relative_end_time": 2030.457064151764, + "relative_sv_pre_time": 2026.2032260894775, + "relative_sv_post_time": 2036.2032260894775, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160608T151624_VV_2016-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0403_0408_011621_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11621, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160608T151624_VV_2016-BURST", + "sensor": "C-SAR", + "startTime": "2016-06-08T15:16:25.423406Z", + "stopTime": "2016-06-08T15:16:28.543740Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160608T151609_20160608T151632_011621_011C4A_2016/IW3/VV/5.tiff", + "pgeVersion": "002.71", + "fileName": "S1_372326_IW3_20160608T151624_VV_2016-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 24959656, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-06-08T15:16:24.276359", + "azimuthAnxTime": "2026.2316737713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160608T151609_20160608T151632_011621_011C4A_2016/IW3/VV/5.xml", + ], + "temporalBaseline": -798, + "perpendicularBaseline": 21, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709348434-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160608T151624_VV_2016-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:19.504Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-06-08T15:16:25.423406Z", + "EndingDateTime": "2016-06-08T15:16:28.543740Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11621 }], + "GranuleUR": "S1_372326_IW3_20160608T151624_VV_2016-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-06-08T14:42:38.038309Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2316737713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-06-08T15:16:24.276359"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["24959656"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0403_0408_011621_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2421104.783308,-3215612.653187,5809677.211801,2016-06-08T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2367678.124575,-3180666.853999,5850693.699725,2016-06-08T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5331.74942,-3472.742537,-4134.503716,2016-06-08T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5353.471833,-3516.357188,-4068.71705,2016-06-08T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:19Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:19Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.71" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160608T151609_20160608T151632_011621_011C4A_2016/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160608T151609_20160608T151632_011621_011C4A_2016/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160608T151609_20160608T151632_011621_011C4A_2016-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2367678.124575, -3180666.853999, 5850693.699725], + "prePositionTime": "2016-06-08T15:16:23.000000Z", + "postPosition": + [-2421104.783308, -3215612.653187, 5809677.211801], + "postPositionTime": "2016-06-08T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5353.471833, -3516.357188, -4068.71705], + "preVelocityTime": "2016-06-08T15:16:23.000000", + "postVelocity": [-5331.74942, -3472.742537, -4134.503716], + "postVelocityTime": "2016-06-08T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-06-08T14:42:38.038309Z", + "relative_start_time": 2027.3850967884064, + "relative_center_time": 2028.9452638626099, + "relative_end_time": 2030.5054309368134, + "relative_sv_pre_time": 2024.96169090271, + "relative_sv_post_time": 2034.96169090271, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160702T151625_VV_9E50-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0406_011971_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11971, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160702T151625_VV_9E50-BURST", + "sensor": "C-SAR", + "startTime": "2016-07-02T15:16:26.861776Z", + "stopTime": "2016-07-02T15:16:29.982110Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160702T151610_20160702T151634_011971_01275E_9E50/IW3/VV/5.tiff", + "pgeVersion": "002.71", + "fileName": "S1_372326_IW3_20160702T151625_VV_9E50-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 25711431, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-07-02T15:16:25.720895", + "azimuthAnxTime": "2026.2261981024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160702T151610_20160702T151634_011971_01275E_9E50/IW3/VV/5.xml", + ], + "temporalBaseline": -774, + "perpendicularBaseline": 115, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709345831-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160702T151625_VV_9E50-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:06.083Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-07-02T15:16:26.861776Z", + "EndingDateTime": "2016-07-02T15:16:29.982110Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11971 }], + "GranuleUR": "S1_372326_IW3_20160702T151625_VV_9E50-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-07-02T14:42:39.494697Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2261981024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-07-02T15:16:25.720895"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["25711431"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0406_011971_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2413511.463296,-3210548.53168,5815639.446106,2016-07-02T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2360053.592373,-3175540.298504,5856561.072791,2016-07-02T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5334.91795,-3479.012321,-4125.050701,2016-07-02T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5356.545739,-3522.57405,-4059.198007,2016-07-02T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:05Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:05Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.71" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160702T151610_20160702T151634_011971_01275E_9E50/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160702T151610_20160702T151634_011971_01275E_9E50/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160702T151610_20160702T151634_011971_01275E_9E50-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2360053.592373, -3175540.298504, 5856561.072791], + "prePositionTime": "2016-07-02T15:16:23.000000Z", + "postPosition": + [-2413511.463296, -3210548.53168, 5815639.446106], + "postPositionTime": "2016-07-02T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5356.545739, -3522.57405, -4059.198007], + "preVelocityTime": "2016-07-02T15:16:23.000000", + "postVelocity": [-5334.91795, -3479.012321, -4125.050701], + "postVelocityTime": "2016-07-02T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-07-02T14:42:39.494697Z", + "relative_start_time": 2027.3670790195465, + "relative_center_time": 2028.92724609375, + "relative_end_time": 2030.487412929535, + "relative_sv_pre_time": 2023.5053029060364, + "relative_sv_post_time": 2033.5053029060364, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160726T151626_VV_AE47-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0406_012321_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12321, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160726T151626_VV_AE47-BURST", + "sensor": "C-SAR", + "startTime": "2016-07-26T15:16:28.099889Z", + "stopTime": "2016-07-26T15:16:31.220223Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160726T151612_20160726T151635_012321_0132CD_AE47/IW3/VV/5.tiff", + "pgeVersion": "002.71", + "fileName": "S1_372326_IW3_20160726T151626_VV_AE47-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 26463206, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-07-26T15:16:26.952843", + "azimuthAnxTime": "2026.2246386587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160726T151612_20160726T151635_012321_0132CD_AE47/IW3/VV/5.xml", + ], + "temporalBaseline": -750, + "perpendicularBaseline": -18, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709342912-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160726T151626_VV_AE47-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:04:03.271Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-07-26T15:16:28.099889Z", + "EndingDateTime": "2016-07-26T15:16:31.220223Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12321 }], + "GranuleUR": "S1_372326_IW3_20160726T151626_VV_AE47-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-07-26T14:42:40.786827Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2246386587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-07-26T15:16:26.952843"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["26463206"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0406_012321_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2406786.754368,-3206364.728704,5820719.694622,2016-07-26T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2353301.916409,-3171302.729478,5861559.757295,2016-07-26T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5337.656325,-3484.410528,-4116.922685,2016-07-26T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5359.200684,-3527.928909,-4051.013345,2016-07-26T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:04:02Z" }, + { "Type": "Update", "Date": "2023-06-16T01:04:02Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.71" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160726T151612_20160726T151635_012321_0132CD_AE47/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160726T151612_20160726T151635_012321_0132CD_AE47/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160726T151612_20160726T151635_012321_0132CD_AE47-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2353301.916409, -3171302.729478, 5861559.757295], + "prePositionTime": "2016-07-26T15:16:23.000000Z", + "postPosition": + [-2406786.754368, -3206364.728704, 5820719.694622], + "postPositionTime": "2016-07-26T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5359.200684, -3527.928909, -4051.013345], + "preVelocityTime": "2016-07-26T15:16:23.000000", + "postVelocity": [-5337.656325, -3484.410528, -4116.922685], + "postVelocityTime": "2016-07-26T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-07-26T14:42:40.786827Z", + "relative_start_time": 2027.313061952591, + "relative_center_time": 2028.8732290267944, + "relative_end_time": 2030.4333958625793, + "relative_sv_pre_time": 2022.2131729125977, + "relative_sv_post_time": 2032.2131729125977, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160819T151628_VV_AD12-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0404_0409_012671_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12671, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160819T151628_VV_AD12-BURST", + "sensor": "C-SAR", + "startTime": "2016-08-19T15:16:29.478887Z", + "stopTime": "2016-08-19T15:16:32.599221Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160819T151613_20160819T151636_012671_013E70_AD12/IW3/VV/5.tiff", + "pgeVersion": "002.71", + "fileName": "S1_372326_IW3_20160819T151628_VV_AD12-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 27214981, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-08-19T15:16:28.342105", + "azimuthAnxTime": "2026.2460357713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160819T151613_20160819T151636_012671_013E70_AD12/IW3/VV/5.xml", + ], + "temporalBaseline": -726, + "perpendicularBaseline": 116, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709342399-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160819T151628_VV_AD12-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:09.655Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-08-19T15:16:29.478887Z", + "EndingDateTime": "2016-08-19T15:16:32.599221Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12671 }], + "GranuleUR": "S1_372326_IW3_20160819T151628_VV_AD12-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-08-19T14:42:42.170158Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2460357713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-08-19T15:16:28.342105"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["27214981"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0404_0409_012671_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2399539.06012,-3201436.007203,5826409.853617,2016-08-19T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2346025.150964,-3166313.506818,5867159.047714,2016-08-19T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5340.60856,-3490.48633,-4107.867628,2016-08-19T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5362.062642,-3533.953255,-4041.894884,2016-08-19T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:09Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:09Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.71" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160819T151613_20160819T151636_012671_013E70_AD12/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160819T151613_20160819T151636_012671_013E70_AD12/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160819T151613_20160819T151636_012671_013E70_AD12-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2346025.150964, -3166313.506818, 5867159.047714], + "prePositionTime": "2016-08-19T15:16:23.000000Z", + "postPosition": + [-2399539.06012, -3201436.007203, 5826409.853617], + "postPositionTime": "2016-08-19T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5362.062642, -3533.953255, -4041.894884], + "preVelocityTime": "2016-08-19T15:16:23.000000", + "postVelocity": [-5340.60856, -3490.48633, -4107.867628], + "postVelocityTime": "2016-08-19T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-08-19T14:42:42.170158Z", + "relative_start_time": 2027.308729171753, + "relative_center_time": 2028.8688960075378, + "relative_end_time": 2030.4290630817413, + "relative_sv_pre_time": 2020.8298420906067, + "relative_sv_post_time": 2030.8298420906067, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20160912T151629_VV_2AD4-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0404_0409_013021_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13021, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20160912T151629_VV_2AD4-BURST", + "sensor": "C-SAR", + "startTime": "2016-09-12T15:16:30.382879Z", + "stopTime": "2016-09-12T15:16:33.503213Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160912T151614_20160912T151637_013021_0149FA_2AD4/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20160912T151629_VV_2AD4-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 27966755, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-09-12T15:16:29.250208", + "azimuthAnxTime": "2026.2450125461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160912T151614_20160912T151637_013021_0149FA_2AD4/IW3/VV/5.xml", + ], + "temporalBaseline": -702, + "perpendicularBaseline": 22, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709344594-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20160912T151629_VV_2AD4-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:04.049Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-09-12T15:16:30.382879Z", + "EndingDateTime": "2016-09-12T15:16:33.503213Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13021 }], + "GranuleUR": "S1_372326_IW3_20160912T151629_VV_2AD4-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-09-12T14:42:43.005195Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2450125461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-09-12T15:16:29.250208"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["27966755"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723394107"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0404_0409_013021_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2394629.554255,-3198375.709199,5830110.517518,2016-09-12T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2341095.840568,-3163214.589376,5870800.077304,2016-09-12T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5342.619469,-3494.364138,-4101.924764,2016-09-12T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5364.012644,-3537.799227,-4035.911003,2016-09-12T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160912T151614_20160912T151637_013021_0149FA_2AD4/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20160912T151614_20160912T151637_013021_0149FA_2AD4/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20160912T151614_20160912T151637_013021_0149FA_2AD4-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2341095.840568, -3163214.589376, 5870800.077304], + "prePositionTime": "2016-09-12T15:16:23.000000Z", + "postPosition": + [-2394629.554255, -3198375.709199, 5830110.517518], + "postPositionTime": "2016-09-12T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5364.012644, -3537.799227, -4035.911003], + "preVelocityTime": "2016-09-12T15:16:23.000000", + "postVelocity": [-5342.619469, -3494.364138, -4101.924764], + "postVelocityTime": "2016-09-12T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-09-12T14:42:43.005195Z", + "relative_start_time": 2027.3776841163635, + "relative_center_time": 2028.937851190567, + "relative_end_time": 2030.498018026352, + "relative_sv_pre_time": 2019.99480509758, + "relative_sv_post_time": 2029.99480509758, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20161018T151629_VV_CC43-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0408_013546_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13546, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20161018T151629_VV_CC43-BURST", + "sensor": "C-SAR", + "startTime": "2016-10-18T15:16:30.783117Z", + "stopTime": "2016-10-18T15:16:33.903451Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161018T151614_20161018T151643_013546_015AE7_CC43/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20161018T151629_VV_CC43-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 29094417, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-10-18T15:16:29.650461", + "azimuthAnxTime": "2026.2622061024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161018T151614_20161018T151643_013546_015AE7_CC43/IW3/VV/5.xml", + ], + "temporalBaseline": -666, + "perpendicularBaseline": 69, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709342866-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20161018T151629_VV_CC43-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:04:03.199Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-10-18T15:16:30.783117Z", + "EndingDateTime": "2016-10-18T15:16:33.903451Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13546 }], + "GranuleUR": "S1_372326_IW3_20161018T151629_VV_CC43-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-10-18T14:42:43.378568Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2622061024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-10-18T15:16:29.650461"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["29094417"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723418395"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0408_013546_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2392514.231913,-3196959.73441,5831789.8243,2016-10-18T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2338972.832274,-3161780.864325,5872453.028716,2016-10-18T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5343.401397,-3496.146799,-4099.298152,2016-10-18T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5364.76785,-3539.566544,-4033.266556,2016-10-18T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:04:02Z" }, + { "Type": "Update", "Date": "2023-06-16T01:04:02Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161018T151614_20161018T151643_013546_015AE7_CC43/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161018T151614_20161018T151643_013546_015AE7_CC43/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20161018T151614_20161018T151643_013546_015AE7_CC43-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2338972.832274, -3161780.864325, 5872453.028716], + "prePositionTime": "2016-10-18T15:16:23.000000Z", + "postPosition": [-2392514.231913, -3196959.73441, 5831789.8243], + "postPositionTime": "2016-10-18T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5364.76785, -3539.566544, -4033.266556], + "preVelocityTime": "2016-10-18T15:16:23.000000", + "postVelocity": [-5343.401397, -3496.146799, -4099.298152], + "postVelocityTime": "2016-10-18T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-10-18T14:42:43.378568Z", + "relative_start_time": 2027.4045491218567, + "relative_center_time": 2028.9647161960602, + "relative_end_time": 2030.524883031845, + "relative_sv_pre_time": 2019.6214320659637, + "relative_sv_post_time": 2029.6214320659637, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20161111T151629_VV_938A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0408_013896_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13896, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20161111T151629_VV_938A-BURST", + "sensor": "C-SAR", + "startTime": "2016-11-11T15:16:30.733861Z", + "stopTime": "2016-11-11T15:16:33.854195Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161111T151614_20161111T151643_013896_0165D3_938A/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20161111T151629_VV_938A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 29846192, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-11-11T15:16:29.605316", + "azimuthAnxTime": "2026.2743169898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161111T151614_20161111T151643_013896_0165D3_938A/IW3/VV/5.xml", + ], + "temporalBaseline": -642, + "perpendicularBaseline": 58, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709343193-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20161111T151629_VV_938A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:09.565Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-11-11T15:16:30.733861Z", + "EndingDateTime": "2016-11-11T15:16:33.854195Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13896 }], + "GranuleUR": "S1_372326_IW3_20161111T151629_VV_938A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-11-11T14:42:43.334935Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2743169898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-11-11T15:16:29.605316"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["29846192"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723418395"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0408_013896_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2392763.340753,-3197159.817693,5831600.034183,2016-11-11T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2339222.675301,-3161983.728777,5872266.379821,2016-11-11T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5343.326495,-3495.867772,-4099.610988,2016-11-11T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5364.69596,-3539.289388,-4033.582002,2016-11-11T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:09Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:09Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161111T151614_20161111T151643_013896_0165D3_938A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161111T151614_20161111T151643_013896_0165D3_938A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20161111T151614_20161111T151643_013896_0165D3_938A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2339222.675301, -3161983.728777, 5872266.379821], + "prePositionTime": "2016-11-11T15:16:23.000000Z", + "postPosition": + [-2392763.340753, -3197159.817693, 5831600.034183], + "postPositionTime": "2016-11-11T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5364.69596, -3539.289388, -4033.582002], + "preVelocityTime": "2016-11-11T15:16:23.000000", + "postVelocity": [-5343.326495, -3495.867772, -4099.610988], + "postVelocityTime": "2016-11-11T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-11-11T14:42:43.334935Z", + "relative_start_time": 2027.3989260196686, + "relative_center_time": 2028.959093093872, + "relative_end_time": 2030.5192601680756, + "relative_sv_pre_time": 2019.6650650501251, + "relative_sv_post_time": 2029.6650650501251, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20161205T151629_VV_7139-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0408_014246_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14246, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20161205T151629_VV_7139-BURST", + "sensor": "C-SAR", + "startTime": "2016-12-05T15:16:30.180639Z", + "stopTime": "2016-12-05T15:16:33.300973Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161205T151614_20161205T151643_014246_01709A_7139/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20161205T151629_VV_7139-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 30597967, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-12-05T15:16:29.050036", + "azimuthAnxTime": "2026.2776521024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161205T151614_20161205T151643_014246_01709A_7139/IW3/VV/5.xml", + ], + "temporalBaseline": -618, + "perpendicularBaseline": 87, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709343077-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20161205T151629_VV_7139-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:07:39.535Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-12-05T15:16:30.180639Z", + "EndingDateTime": "2016-12-05T15:16:33.300973Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14246 }], + "GranuleUR": "S1_372326_IW3_20161205T151629_VV_7139-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-12-05T14:42:42.772384Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2776521024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-12-05T15:16:29.050036"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["30597967"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723418395"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0408_014246_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2395748.713458,-3199077.719762,5829337.616471,2016-12-05T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2342219.493343,-3163926.433119,5870040.48298,2016-12-05T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5342.163442,-3493.377604,-4103.250302,2016-12-05T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5363.569964,-3536.819111,-4037.24677,2016-12-05T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:07:39Z" }, + { "Type": "Update", "Date": "2023-06-16T01:07:39Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161205T151614_20161205T151643_014246_01709A_7139/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161205T151614_20161205T151643_014246_01709A_7139/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20161205T151614_20161205T151643_014246_01709A_7139-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2342219.493343, -3163926.433119, 5870040.48298], + "prePositionTime": "2016-12-05T15:16:23.000000Z", + "postPosition": + [-2395748.713458, -3199077.719762, 5829337.616471], + "postPositionTime": "2016-12-05T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5363.569964, -3536.819111, -4037.24677], + "preVelocityTime": "2016-12-05T15:16:23.000000", + "postVelocity": [-5342.163442, -3493.377604, -4103.250302], + "postVelocityTime": "2016-12-05T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-12-05T14:42:42.772384Z", + "relative_start_time": 2027.4082551002502, + "relative_center_time": 2028.9684221744537, + "relative_end_time": 2030.5285890102386, + "relative_sv_pre_time": 2020.227616071701, + "relative_sv_post_time": 2030.227616071701, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20161229T151628_VV_5D90-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0408_014596_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14596, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20161229T151628_VV_5D90-BURST", + "sensor": "C-SAR", + "startTime": "2016-12-29T15:16:29.377340Z", + "stopTime": "2016-12-29T15:16:32.497674Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161229T151613_20161229T151642_014596_017B97_5D90/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20161229T151628_VV_5D90-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 31349742, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2016-12-29T15:16:28.252888", + "azimuthAnxTime": "2026.283511215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161229T151613_20161229T151642_014596_017B97_5D90/IW3/VV/5.xml", + ], + "temporalBaseline": -594, + "perpendicularBaseline": 204, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709340801-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20161229T151628_VV_5D90-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:41.537Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2016-12-29T15:16:29.377340Z", + "EndingDateTime": "2016-12-29T15:16:32.497674Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14596 }], + "GranuleUR": "S1_372326_IW3_20161229T151628_VV_5D90-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2016-12-29T14:42:41.973314Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.283511215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2016-12-29T15:16:28.252888"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["31349742"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723418395"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0408_014596_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2400135.407939,-3201773.686551,5826063.761956,2016-12-29T15:16:33.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2346624.066773,-3166656.7437,5866819.714401,2016-12-29T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5340.348404,-3489.929351,-4108.540547,2016-12-29T15:16:33.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5361.809207,-3533.398678,-4042.573595,2016-12-29T15:16:23.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:41Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:41Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161229T151613_20161229T151642_014596_017B97_5D90/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20161229T151613_20161229T151642_014596_017B97_5D90/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20161229T151613_20161229T151642_014596_017B97_5D90-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": [-2346624.066773, -3166656.7437, 5866819.714401], + "prePositionTime": "2016-12-29T15:16:23.000000Z", + "postPosition": + [-2400135.407939, -3201773.686551, 5826063.761956], + "postPositionTime": "2016-12-29T15:16:33.000000Z", + }, + "velocities": + { + "preVelocity": [-5361.809207, -3533.398678, -4042.573595], + "preVelocityTime": "2016-12-29T15:16:23.000000", + "postVelocity": [-5340.348404, -3489.929351, -4108.540547], + "postVelocityTime": "2016-12-29T15:16:33.000000", + }, + }, + "ascendingNodeTime": "2016-12-29T14:42:41.973314Z", + "relative_start_time": 2027.4040260314941, + "relative_center_time": 2028.9641931056976, + "relative_end_time": 2030.5243599414825, + "relative_sv_pre_time": 2021.0266859531403, + "relative_sv_post_time": 2031.0266859531403, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 144659328, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170215T151625_VV_B64B-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1A_IWSV_0402_0408_015296_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15296, + "pathNumber": 174, + "platform": "SENTINEL-1A", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170215T151625_VV_B64B-BURST", + "sensor": "C-SAR", + "startTime": "2017-02-15T15:16:26.879949Z", + "stopTime": "2017-02-15T15:16:30.000283Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20170215T151611_20170215T151639_015296_019123_B64B/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20170215T151625_VV_B64B-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 32853291, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23824, + "subswath": "IW3", + "azimuthTime": "2017-02-15T15:16:25.751404", + "azimuthAnxTime": "2026.2724496587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20170215T151611_20170215T151639_015296_019123_B64B/IW3/VV/5.xml", + ], + "temporalBaseline": -546, + "perpendicularBaseline": 38, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709340697-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170215T151625_VV_B64B-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:08:46.553Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-02-15T15:16:26.879949Z", + "EndingDateTime": "2017-02-15T15:16:30.000283Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15296 }], + "GranuleUR": "S1_372326_IW3_20170215T151625_VV_B64B-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-02-15T14:42:39.483042Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2724496587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-02-15T15:16:25.751404"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["32853291"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["144659328"] }, + { "Name": "BYTE_OFFSET", "Values": ["723418395"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1A_IWSV_0402_0408_015296_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23824"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2407984.961472,-3207116.945113,5819869.356312,2017-02-15T15:16:32.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2354505.607169,-3172064.674224,5860723.983729,2017-02-15T15:16:22.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5337.100815,-3483.43421,-4118.373764,2017-02-15T15:16:32.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5358.659529,-3526.959583,-4052.47522,2017-02-15T15:16:22.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:08:46Z" }, + { "Type": "Update", "Date": "2023-06-16T01:08:46Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20170215T151611_20170215T151639_015296_019123_B64B/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1A_IW_SLC__1SSV_20170215T151611_20170215T151639_015296_019123_B64B/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1A_IW_SLC__1SSV_20170215T151611_20170215T151639_015296_019123_B64B-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1A", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2354505.607169, -3172064.674224, 5860723.983729], + "prePositionTime": "2017-02-15T15:16:22.000000Z", + "postPosition": + [-2407984.961472, -3207116.945113, 5819869.356312], + "postPositionTime": "2017-02-15T15:16:32.000000Z", + }, + "velocities": + { + "preVelocity": [-5358.659529, -3526.959583, -4052.47522], + "preVelocityTime": "2017-02-15T15:16:22.000000", + "postVelocity": [-5337.100815, -3483.43421, -4118.373764], + "postVelocityTime": "2017-02-15T15:16:32.000000", + }, + }, + "ascendingNodeTime": "2017-02-15T14:42:39.483042Z", + "relative_start_time": 2027.3969070911407, + "relative_center_time": 2028.9570739269257, + "relative_end_time": 2030.5172410011292, + "relative_sv_pre_time": 2022.5169579982758, + "relative_sv_post_time": 2032.5169579982758, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 145120800, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170305T151543_VV_D4E0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWSV_0402_0409_004575_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 4575, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170305T151543_VV_D4E0-BURST", + "sensor": "C-SAR", + "startTime": "2017-03-05T15:15:44.885503Z", + "stopTime": "2017-03-05T15:15:48.005837Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170305T151528_20170305T151603_004575_007F93_D4E0/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20170305T151543_VV_D4E0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 9825357, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23900, + "subswath": "IW3", + "azimuthTime": "2017-03-05T15:15:43.738460", + "azimuthAnxTime": "2026.2471116587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170305T151528_20170305T151603_004575_007F93_D4E0/IW3/VV/5.xml", + ], + "temporalBaseline": -528, + "perpendicularBaseline": -57, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709341050-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170305T151543_VV_D4E0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:06:08.422Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-03-05T15:15:44.885503Z", + "EndingDateTime": "2017-03-05T15:15:48.005837Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 4575 }], + "GranuleUR": "S1_372326_IW3_20170305T151543_VV_D4E0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-03-05T14:41:57.491348Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2471116587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-03-05T15:15:43.738460"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["9825357"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["145120800"] }, + { "Name": "BYTE_OFFSET", "Values": ["725750043"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWSV_0402_0409_004575_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23900"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2418551.694037,-3214111.556592,5811612.640367,2017-03-05T15:15:52.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365115.195082,-3179145.913889,5852598.651471,2017-03-05T15:15:42.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.749455,-3474.734917,-4131.466332,2017-03-05T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.439847,-3518.33345,-4065.659139,2017-03-05T15:15:42.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:06:08Z" }, + { "Type": "Update", "Date": "2023-06-16T01:06:08Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170305T151528_20170305T151603_004575_007F93_D4E0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170305T151528_20170305T151603_004575_007F93_D4E0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SSV_20170305T151528_20170305T151603_004575_007F93_D4E0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365115.195082, -3179145.913889, 5852598.651471], + "prePositionTime": "2017-03-05T15:15:42.000000Z", + "postPosition": + [-2418551.694037, -3214111.556592, 5811612.640367], + "postPositionTime": "2017-03-05T15:15:52.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.439847, -3518.33345, -4065.659139], + "preVelocityTime": "2017-03-05T15:15:42.000000", + "postVelocity": [-5332.749455, -3474.734917, -4131.466332], + "postVelocityTime": "2017-03-05T15:15:52.000000", + }, + }, + "ascendingNodeTime": "2017-03-05T14:41:57.491348Z", + "relative_start_time": 2027.3941550254822, + "relative_center_time": 2028.9543220996857, + "relative_end_time": 2030.5144889354706, + "relative_sv_pre_time": 2024.508651971817, + "relative_sv_post_time": 2034.508651971817, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 145108656, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170317T151544_VV_40B4-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWSV_0402_0409_004750_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 4750, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170317T151544_VV_40B4-BURST", + "sensor": "C-SAR", + "startTime": "2017-03-17T15:15:45.196294Z", + "stopTime": "2017-03-17T15:15:48.316628Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170317T151529_20170317T151603_004750_0084BD_40B4/IW3/VV/5.tiff", + "pgeVersion": "002.72", + "fileName": "S1_372326_IW3_20170317T151544_VV_40B4-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 10201244, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 23898, + "subswath": "IW3", + "azimuthTime": "2017-03-17T15:15:44.047180", + "azimuthAnxTime": "2026.2380875461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170317T151529_20170317T151603_004750_0084BD_40B4/IW3/VV/5.xml", + ], + "temporalBaseline": -516, + "perpendicularBaseline": 11, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709341092-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170317T151544_VV_40B4-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:06:09.210Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-03-17T15:15:45.196294Z", + "EndingDateTime": "2017-03-17T15:15:48.316628Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 4750 }], + "GranuleUR": "S1_372326_IW3_20170317T151544_VV_40B4-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-03-17T14:41:57.809092Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2380875461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-03-17T15:15:44.047180"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["10201244"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["145108656"] }, + { "Name": "BYTE_OFFSET", "Values": ["725689323"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWSV_0402_0409_004750_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1518"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["23898"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2416967.470431,-3212958.462578,5812884.889762,2017-03-17T15:15:52.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2363523.733678,-3177979.83503,5853850.54803,2017-03-17T15:15:42.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5333.482987,-3476.03923,-4129.438398,2017-03-17T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5355.153875,-3519.626067,-4063.616538,2017-03-17T15:15:42.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:06:09Z" }, + { "Type": "Update", "Date": "2023-06-16T01:06:09Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.72" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170317T151529_20170317T151603_004750_0084BD_40B4/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SSV_20170317T151529_20170317T151603_004750_0084BD_40B4/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SSV_20170317T151529_20170317T151603_004750_0084BD_40B4-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": [-2363523.733678, -3177979.83503, 5853850.54803], + "prePositionTime": "2017-03-17T15:15:42.000000Z", + "postPosition": + [-2416967.470431, -3212958.462578, 5812884.889762], + "postPositionTime": "2017-03-17T15:15:52.000000Z", + }, + "velocities": + { + "preVelocity": [-5355.153875, -3519.626067, -4063.616538], + "preVelocityTime": "2017-03-17T15:15:42.000000", + "postVelocity": [-5333.482987, -3476.03923, -4129.438398], + "postVelocityTime": "2017-03-17T15:15:52.000000", + }, + }, + "ascendingNodeTime": "2017-03-17T14:41:57.809092Z", + "relative_start_time": 2027.3872020244598, + "relative_center_time": 2028.9473690986633, + "relative_end_time": 2030.5075359344482, + "relative_sv_pre_time": 2024.1909079551697, + "relative_sv_post_time": 2034.1909079551697, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170808T151551_VV_CC82-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_006850_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 6850, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170808T151551_VV_CC82-BURST", + "sensor": "C-SAR", + "startTime": "2017-08-08T15:15:52.514394Z", + "stopTime": "2017-08-08T15:15:55.636784Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170808T151536_20170808T151603_006850_00C0EC_CC82/IW3/VV/5.tiff", + "pgeVersion": "002.82", + "fileName": "S1_372326_IW3_20170808T151551_VV_CC82-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 14711892, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-08-08T15:15:51.359112", + "azimuthAnxTime": "2026.206676215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170808T151536_20170808T151603_006850_00C0EC_CC82/IW3/VV/5.xml", + ], + "temporalBaseline": -372, + "perpendicularBaseline": 94, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709409538-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170808T151551_VV_CC82-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:21.387Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-08-08T15:15:52.514394Z", + "EndingDateTime": "2017-08-08T15:15:55.636784Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 6850 }], + "GranuleUR": "S1_372326_IW3_20170808T151551_VV_CC82-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-08-08T14:42:05.200321Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.206676215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-08-08T15:15:51.359112"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["14711892"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_006850_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2431349.83465,-3222172.276731,5801783.679882,2017-08-08T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2377965.112232,-3187309.625963,5842925.749698,2017-08-08T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5327.492204,-3464.393828,-4147.017723,2017-08-08T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5349.341846,-3508.076421,-4081.319195,2017-08-08T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:21Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:21Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.82" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170808T151536_20170808T151603_006850_00C0EC_CC82/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170808T151536_20170808T151603_006850_00C0EC_CC82/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20170808T151536_20170808T151603_006850_00C0EC_CC82-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2377965.112232, -3187309.625963, 5842925.749698], + "prePositionTime": "2017-08-08T15:15:52.000000Z", + "postPosition": + [-2431349.83465, -3222172.276731, 5801783.679882], + "postPositionTime": "2017-08-08T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5349.341846, -3508.076421, -4081.319195], + "preVelocityTime": "2017-08-08T15:15:52.000000", + "postVelocity": [-5327.492204, -3464.393828, -4147.017723], + "postVelocityTime": "2017-08-08T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-08-08T14:42:05.200321Z", + "relative_start_time": 2027.314073085785, + "relative_center_time": 2028.8752682209015, + "relative_end_time": 2030.4364631175995, + "relative_sv_pre_time": 2026.7996790409088, + "relative_sv_post_time": 2036.7996790409088, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170820T151551_VV_E054-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_007025_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7025, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170820T151551_VV_E054-BURST", + "sensor": "C-SAR", + "startTime": "2017-08-20T15:15:53.056478Z", + "stopTime": "2017-08-20T15:15:56.178868Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170820T151537_20170820T151604_007025_00C608_E054/IW3/VV/5.tiff", + "pgeVersion": "002.82", + "fileName": "S1_372326_IW3_20170820T151551_VV_E054-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 15087780, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-08-20T15:15:51.903267", + "azimuthAnxTime": "2026.211431215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170820T151537_20170820T151604_007025_00C608_E054/IW3/VV/5.xml", + ], + "temporalBaseline": -360, + "perpendicularBaseline": 19, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709390122-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170820T151551_VV_E054-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:31.310Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-08-20T15:15:53.056478Z", + "EndingDateTime": "2017-08-20T15:15:56.178868Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7025 }], + "GranuleUR": "S1_372326_IW3_20170820T151551_VV_E054-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-08-20T14:42:05.691836Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.211431215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-08-20T15:15:51.903267"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["15087780"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_007025_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2428391.95356,-3220358.452971,5804020.796947,2017-08-20T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2374995.414642,-3185471.929456,5845127.261199,2017-08-20T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5328.69221,-3466.790452,-4143.469718,2017-08-20T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5350.505158,-3510.454293,-4077.746181,2017-08-20T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:31Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:31Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.82" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170820T151537_20170820T151604_007025_00C608_E054/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170820T151537_20170820T151604_007025_00C608_E054/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20170820T151537_20170820T151604_007025_00C608_E054-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2374995.414642, -3185471.929456, 5845127.261199], + "prePositionTime": "2017-08-20T15:15:52.000000Z", + "postPosition": + [-2428391.95356, -3220358.452971, 5804020.796947], + "postPositionTime": "2017-08-20T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5350.505158, -3510.454293, -4077.746181], + "preVelocityTime": "2017-08-20T15:15:52.000000", + "postVelocity": [-5328.69221, -3466.790452, -4143.469718], + "postVelocityTime": "2017-08-20T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-08-20T14:42:05.691836Z", + "relative_start_time": 2027.364641904831, + "relative_center_time": 2028.925836801529, + "relative_end_time": 2030.4870319366455, + "relative_sv_pre_time": 2026.3081638813019, + "relative_sv_post_time": 2036.3081638813019, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170901T151552_VV_758B-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_007200_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7200, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170901T151552_VV_758B-BURST", + "sensor": "C-SAR", + "startTime": "2017-09-01T15:15:53.587774Z", + "stopTime": "2017-09-01T15:15:56.710164Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170901T151537_20170901T151604_007200_00CB14_758B/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20170901T151552_VV_758B-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 15463667, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-09-01T15:15:52.448938", + "azimuthAnxTime": "2026.2225887713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170901T151537_20170901T151604_007200_00CB14_758B/IW3/VV/5.xml", + ], + "temporalBaseline": -348, + "perpendicularBaseline": 14, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709407181-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170901T151552_VV_758B-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:21.337Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-09-01T15:15:53.587774Z", + "EndingDateTime": "2017-09-01T15:15:56.710164Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7200 }], + "GranuleUR": "S1_372326_IW3_20170901T151552_VV_758B-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-09-01T14:42:06.273866Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2225887713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-09-01T15:15:52.448938"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["15463667"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_007200_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2425558.875809,-3218533.974002,5806223.214325,2017-09-01T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2372150.36416,-3183624.780277,5847294.554243,2017-09-01T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5329.907107,-3469.066942,-4139.969458,2017-09-01T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5351.68479,-3512.711767,-4074.221625,2017-09-01T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:21Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:21Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170901T151537_20170901T151604_007200_00CB14_758B/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170901T151537_20170901T151604_007200_00CB14_758B/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20170901T151537_20170901T151604_007200_00CB14_758B-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2372150.36416, -3183624.780277, 5847294.554243], + "prePositionTime": "2017-09-01T15:15:52.000000Z", + "postPosition": + [-2425558.875809, -3218533.974002, 5806223.214325], + "postPositionTime": "2017-09-01T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5351.68479, -3512.711767, -4074.221625], + "preVelocityTime": "2017-09-01T15:15:52.000000", + "postVelocity": [-5329.907107, -3469.066942, -4139.969458], + "postVelocityTime": "2017-09-01T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-09-01T14:42:06.273866Z", + "relative_start_time": 2027.3139081001282, + "relative_center_time": 2028.8751032352448, + "relative_end_time": 2030.4362981319427, + "relative_sv_pre_time": 2025.7261340618134, + "relative_sv_post_time": 2035.7261340618134, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170913T151552_VV_F5C8-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_007375_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7375, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170913T151552_VV_F5C8-BURST", + "sensor": "C-SAR", + "startTime": "2017-09-13T15:15:54.102666Z", + "stopTime": "2017-09-13T15:15:57.225056Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170913T151538_20170913T151605_007375_00D03A_F5C8/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20170913T151552_VV_F5C8-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 15839555, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-09-13T15:15:52.963831", + "azimuthAnxTime": "2026.2422907713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170913T151538_20170913T151605_007375_00D03A_F5C8/IW3/VV/5.xml", + ], + "temporalBaseline": -336, + "perpendicularBaseline": 35, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709398289-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170913T151552_VV_F5C8-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:13.570Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-09-13T15:15:54.102666Z", + "EndingDateTime": "2017-09-13T15:15:57.225056Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7375 }], + "GranuleUR": "S1_372326_IW3_20170913T151552_VV_F5C8-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-09-13T14:42:06.768708Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2422907713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-09-13T15:15:52.963831"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["15839555"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_007375_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2422825.05688,-3216779.839591,5808389.555692,2017-09-13T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2369404.889195,-3181849.3745,5849426.812326,2017-09-13T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5331.089897,-3471.203466,-4136.572564,2017-09-13T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5352.83319,-3514.829441,-4070.801912,2017-09-13T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:13Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:13Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170913T151538_20170913T151605_007375_00D03A_F5C8/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170913T151538_20170913T151605_007375_00D03A_F5C8/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20170913T151538_20170913T151605_007375_00D03A_F5C8-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": [-2369404.889195, -3181849.3745, 5849426.812326], + "prePositionTime": "2017-09-13T15:15:52.000000Z", + "postPosition": + [-2422825.05688, -3216779.839591, 5808389.555692], + "postPositionTime": "2017-09-13T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5352.83319, -3514.829441, -4070.801912], + "preVelocityTime": "2017-09-13T15:15:52.000000", + "postVelocity": [-5331.089897, -3471.203466, -4136.572564], + "postVelocityTime": "2017-09-13T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-09-13T14:42:06.768708Z", + "relative_start_time": 2027.3339579105377, + "relative_center_time": 2028.8951528072357, + "relative_end_time": 2030.4563479423523, + "relative_sv_pre_time": 2025.2312920093536, + "relative_sv_post_time": 2035.2312920093536, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20170925T151553_VV_B437-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_007550_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7550, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20170925T151553_VV_B437-BURST", + "sensor": "C-SAR", + "startTime": "2017-09-25T15:15:54.495382Z", + "stopTime": "2017-09-25T15:15:57.617772Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170925T151538_20170925T151605_007550_00D545_B437/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20170925T151553_VV_B437-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 16215442, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-09-25T15:15:53.350379", + "azimuthAnxTime": "2026.2274347713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170925T151538_20170925T151605_007550_00D545_B437/IW3/VV/5.xml", + ], + "temporalBaseline": -324, + "perpendicularBaseline": 42, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709395630-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20170925T151553_VV_B437-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:25:28.291Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-09-25T15:15:54.495382Z", + "EndingDateTime": "2017-09-25T15:15:57.617772Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7550 }], + "GranuleUR": "S1_372326_IW3_20170925T151553_VV_B437-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-09-25T14:42:07.169917Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2274347713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-09-25T15:15:53.350379"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["16215442"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_007550_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2420745.828192,-3215389.308289,5809993.60301,2017-09-25T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2367317.058484,-3180441.691068,5851005.16902,2017-09-25T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5331.962871,-3472.925707,-4134.012784,2017-09-25T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5353.680563,-3516.537594,-4068.223592,2017-09-25T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:25:27Z" }, + { "Type": "Update", "Date": "2023-06-16T01:25:27Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170925T151538_20170925T151605_007550_00D545_B437/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20170925T151538_20170925T151605_007550_00D545_B437/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20170925T151538_20170925T151605_007550_00D545_B437-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2367317.058484, -3180441.691068, 5851005.16902], + "prePositionTime": "2017-09-25T15:15:52.000000Z", + "postPosition": + [-2420745.828192, -3215389.308289, 5809993.60301], + "postPositionTime": "2017-09-25T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5353.680563, -3516.537594, -4068.223592], + "preVelocityTime": "2017-09-25T15:15:52.000000", + "postVelocity": [-5331.962871, -3472.925707, -4134.012784], + "postVelocityTime": "2017-09-25T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-09-25T14:42:07.169917Z", + "relative_start_time": 2027.325464963913, + "relative_center_time": 2028.8866600990295, + "relative_end_time": 2030.4478549957275, + "relative_sv_pre_time": 2024.8300828933716, + "relative_sv_post_time": 2034.8300828933716, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171007T151553_VV_DCDC-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_007725_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7725, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171007T151553_VV_DCDC-BURST", + "sensor": "C-SAR", + "startTime": "2017-10-07T15:15:54.682836Z", + "stopTime": "2017-10-07T15:15:57.805226Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171007T151538_20171007T151605_007725_00DA4E_DCDC/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171007T151553_VV_DCDC-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 16591329, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-10-07T15:15:53.541945", + "azimuthAnxTime": "2026.238176215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171007T151538_20171007T151605_007725_00DA4E_DCDC/IW3/VV/5.xml", + ], + "temporalBaseline": -312, + "perpendicularBaseline": 86, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709402518-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171007T151553_VV_DCDC-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:27:45.796Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-10-07T15:15:54.682836Z", + "EndingDateTime": "2017-10-07T15:15:57.805226Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7725 }], + "GranuleUR": "S1_372326_IW3_20171007T151553_VV_DCDC-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-10-07T14:42:07.350426Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.238176215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-10-07T15:15:53.541945"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["16591329"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_007725_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419771.939645,-3214705.11071,5810790.614699,2017-10-07T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2366340.056768,-3179748.418552,5851789.951521,2017-10-07T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.280376,-3473.836926,-4132.794153,2017-10-07T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5353.985672,-3517.441353,-4066.996409,2017-10-07T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:27:45Z" }, + { "Type": "Update", "Date": "2023-06-16T01:27:45Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171007T151538_20171007T151605_007725_00DA4E_DCDC/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171007T151538_20171007T151605_007725_00DA4E_DCDC/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171007T151538_20171007T151605_007725_00DA4E_DCDC-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2366340.056768, -3179748.418552, 5851789.951521], + "prePositionTime": "2017-10-07T15:15:52.000000Z", + "postPosition": + [-2419771.939645, -3214705.11071, 5810790.614699], + "postPositionTime": "2017-10-07T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5353.985672, -3517.441353, -4066.996409], + "preVelocityTime": "2017-10-07T15:15:52.000000", + "postVelocity": [-5332.280376, -3473.836926, -4132.794153], + "postVelocityTime": "2017-10-07T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-10-07T14:42:07.350426Z", + "relative_start_time": 2027.3324100971222, + "relative_center_time": 2028.8936049938202, + "relative_end_time": 2030.4548001289368, + "relative_sv_pre_time": 2024.6495740413666, + "relative_sv_post_time": 2034.6495740413666, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171019T151553_VV_98C1-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_007900_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 7900, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171019T151553_VV_98C1-BURST", + "sensor": "C-SAR", + "startTime": "2017-10-19T15:15:54.841024Z", + "stopTime": "2017-10-19T15:15:57.963414Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171019T151538_20171019T151605_007900_00DF44_98C1/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171019T151553_VV_98C1-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 16967217, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-10-19T15:15:53.689869", + "azimuthAnxTime": "2026.2358009898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171019T151538_20171019T151605_007900_00DF44_98C1/IW3/VV/5.xml", + ], + "temporalBaseline": -300, + "perpendicularBaseline": 100, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709397775-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171019T151553_VV_98C1-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:16.102Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-10-19T15:15:54.841024Z", + "EndingDateTime": "2017-10-19T15:15:57.963414Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 7900 }], + "GranuleUR": "S1_372326_IW3_20171019T151553_VV_98C1-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-10-19T14:42:07.454068Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2358009898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-10-19T15:15:53.689869"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["16967217"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_007900_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419155.236211,-3214295.338906,5811285.579634,2017-10-19T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365721.155957,-3179333.408247,5852277.313922,2017-10-19T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.504021,-3474.363017,-4132.036527,2017-10-19T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.201509,-3517.96297,-4066.233555,2017-10-19T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:15Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:15Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171019T151538_20171019T151605_007900_00DF44_98C1/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171019T151538_20171019T151605_007900_00DF44_98C1/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171019T151538_20171019T151605_007900_00DF44_98C1-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365721.155957, -3179333.408247, 5852277.313922], + "prePositionTime": "2017-10-19T15:15:52.000000Z", + "postPosition": + [-2419155.236211, -3214295.338906, 5811285.579634], + "postPositionTime": "2017-10-19T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.201509, -3517.96297, -4066.233555], + "preVelocityTime": "2017-10-19T15:15:52.000000", + "postVelocity": [-5332.504021, -3474.363017, -4132.036527], + "postVelocityTime": "2017-10-19T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-10-19T14:42:07.454068Z", + "relative_start_time": 2027.3869559764862, + "relative_center_time": 2028.9481508731842, + "relative_end_time": 2030.5093460083008, + "relative_sv_pre_time": 2024.5459320545197, + "relative_sv_post_time": 2034.5459320545197, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171031T151553_VV_8C2A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_008075_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8075, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171031T151553_VV_8C2A-BURST", + "sensor": "C-SAR", + "startTime": "2017-10-31T15:15:54.980275Z", + "stopTime": "2017-10-31T15:15:58.102665Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171031T151539_20171031T151606_008075_00E44C_8C2A/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171031T151553_VV_8C2A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 17343104, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-10-31T15:15:53.845550", + "azimuthAnxTime": "2026.2566009965", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171031T151539_20171031T151606_008075_00E44C_8C2A/IW3/VV/5.xml", + ], + "temporalBaseline": -288, + "perpendicularBaseline": 88, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709409307-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171031T151553_VV_8C2A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:26:50.967Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-10-31T15:15:54.980275Z", + "EndingDateTime": "2017-10-31T15:15:58.102665Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8075 }], + "GranuleUR": "S1_372326_IW3_20171031T151553_VV_8C2A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-10-31T14:42:07.570835Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2566009965"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-10-31T15:15:53.845550"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["17343104"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_008075_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419111.614949,-3214292.994906,5811313.128906,2017-10-31T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365676.683556,-3179331.791523,5852304.324015,2017-10-31T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.589383,-3474.290295,-4131.982678,2017-10-31T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.286405,-3517.890238,-4066.179585,2017-10-31T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:26:50Z" }, + { "Type": "Update", "Date": "2023-06-16T01:26:50Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171031T151539_20171031T151606_008075_00E44C_8C2A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171031T151539_20171031T151606_008075_00E44C_8C2A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171031T151539_20171031T151606_008075_00E44C_8C2A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365676.683556, -3179331.791523, 5852304.324015], + "prePositionTime": "2017-10-31T15:15:52.000000Z", + "postPosition": + [-2419111.614949, -3214292.994906, 5811313.128906], + "postPositionTime": "2017-10-31T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.286405, -3517.890238, -4066.179585], + "preVelocityTime": "2017-10-31T15:15:52.000000", + "postVelocity": [-5332.589383, -3474.290295, -4131.982678], + "postVelocityTime": "2017-10-31T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2017-10-31T14:42:07.570835Z", + "relative_start_time": 2027.4094398021698, + "relative_center_time": 2028.9706349372864, + "relative_end_time": 2030.5318298339844, + "relative_sv_pre_time": 2024.4291648864746, + "relative_sv_post_time": 2034.4291648864746, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171112T151553_VV_58B2-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_008250_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8250, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171112T151553_VV_58B2-BURST", + "sensor": "C-SAR", + "startTime": "2017-11-12T15:15:54.577474Z", + "stopTime": "2017-11-12T15:15:57.699864Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171112T151538_20171112T151605_008250_00E976_58B2/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171112T151553_VV_58B2-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 17718991, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2017-11-12T15:15:53.438637", + "azimuthAnxTime": "2026.2559257713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171112T151538_20171112T151605_008250_00E976_58B2/IW3/VV/5.xml", + ], + "temporalBaseline": -276, + "perpendicularBaseline": 39, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709411270-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171112T151553_VV_58B2-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:25:37.185Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-11-12T15:15:54.577474Z", + "EndingDateTime": "2017-11-12T15:15:57.699864Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8250 }], + "GranuleUR": "S1_372326_IW3_20171112T151553_VV_58B2-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-11-12T14:42:07.164650Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2559257713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-11-12T15:15:53.438637"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["17718991"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_008250_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419046.213957,-3214333.775283,5811323.888731,2017-11-12T15:16:01.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365611.505639,-3179372.077475,5852314.906576,2017-11-12T15:15:51.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.567514,-3474.339558,-4131.96494,2017-11-12T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.26367,-3517.939846,-4066.161867,2017-11-12T15:15:51.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:25:36Z" }, + { "Type": "Update", "Date": "2023-06-16T01:25:36Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171112T151538_20171112T151605_008250_00E976_58B2/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171112T151538_20171112T151605_008250_00E976_58B2/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171112T151538_20171112T151605_008250_00E976_58B2-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365611.505639, -3179372.077475, 5852314.906576], + "prePositionTime": "2017-11-12T15:15:51.000000Z", + "postPosition": + [-2419046.213957, -3214333.775283, 5811323.888731], + "postPositionTime": "2017-11-12T15:16:01.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.26367, -3517.939846, -4066.161867], + "preVelocityTime": "2017-11-12T15:15:51.000000", + "postVelocity": [-5332.567514, -3474.339558, -4131.96494], + "postVelocityTime": "2017-11-12T15:16:01.000000", + }, + }, + "ascendingNodeTime": "2017-11-12T14:42:07.164650Z", + "relative_start_time": 2027.4128241539001, + "relative_center_time": 2028.9740190505981, + "relative_end_time": 2030.5352139472961, + "relative_sv_pre_time": 2023.835350036621, + "relative_sv_post_time": 2033.835350036621, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171124T151553_VV_6D17-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_008425_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8425, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171124T151553_VV_6D17-BURST", + "sensor": "C-SAR", + "startTime": "2017-11-24T15:15:54.371846Z", + "stopTime": "2017-11-24T15:15:57.494236Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171124T151538_20171124T151605_008425_00EEC1_6D17/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171124T151553_VV_6D17-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 18094879, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-11-24T15:15:53.228897", + "azimuthAnxTime": "2026.2540521024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171124T151538_20171124T151605_008425_00EEC1_6D17/IW3/VV/5.xml", + ], + "temporalBaseline": -264, + "perpendicularBaseline": 46, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709406223-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171124T151553_VV_6D17-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:19:28.158Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-11-24T15:15:54.371846Z", + "EndingDateTime": "2017-11-24T15:15:57.494236Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8425 }], + "GranuleUR": "S1_372326_IW3_20171124T151553_VV_6D17-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-11-24T14:42:06.956743Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2540521024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-11-24T15:15:53.228897"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["18094879"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_008425_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419047.626203,-3214328.114144,5811333.427046,2017-11-24T15:16:01.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365612.50138,-3179366.934119,5852324.277895,2017-11-24T15:15:51.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.609159,-3474.287806,-4131.948211,2017-11-24T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.305333,-3517.888016,-4066.145195,2017-11-24T15:15:51.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:19:27Z" }, + { "Type": "Update", "Date": "2023-06-16T01:19:27Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171124T151538_20171124T151605_008425_00EEC1_6D17/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171124T151538_20171124T151605_008425_00EEC1_6D17/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171124T151538_20171124T151605_008425_00EEC1_6D17-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365612.50138, -3179366.934119, 5852324.277895], + "prePositionTime": "2017-11-24T15:15:51.000000Z", + "postPosition": + [-2419047.626203, -3214328.114144, 5811333.427046], + "postPositionTime": "2017-11-24T15:16:01.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.305333, -3517.888016, -4066.145195], + "preVelocityTime": "2017-11-24T15:15:51.000000", + "postVelocity": [-5332.609159, -3474.287806, -4131.948211], + "postVelocityTime": "2017-11-24T15:16:01.000000", + }, + }, + "ascendingNodeTime": "2017-11-24T14:42:06.956743Z", + "relative_start_time": 2027.4151029586792, + "relative_center_time": 2028.9762980937958, + "relative_end_time": 2030.5374929904938, + "relative_sv_pre_time": 2024.0432569980621, + "relative_sv_post_time": 2034.0432569980621, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171206T151552_VV_AF64-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_008600_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8600, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171206T151552_VV_AF64-BURST", + "sensor": "C-SAR", + "startTime": "2017-12-06T15:15:53.878133Z", + "stopTime": "2017-12-06T15:15:57.000523Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171206T151537_20171206T151604_008600_00F452_AF64/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171206T151552_VV_AF64-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 18470766, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2017-12-06T15:15:52.731087", + "azimuthAnxTime": "2026.2525271024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171206T151537_20171206T151604_008600_00F452_AF64/IW3/VV/5.xml", + ], + "temporalBaseline": -252, + "perpendicularBaseline": 91, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709406943-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171206T151552_VV_AF64-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:35.747Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-12-06T15:15:53.878133Z", + "EndingDateTime": "2017-12-06T15:15:57.000523Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8600 }], + "GranuleUR": "S1_372326_IW3_20171206T151552_VV_AF64-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-12-06T14:42:06.525169Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2525271024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-12-06T15:15:52.731087"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["18470766"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_008600_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419031.996697,-3214254.688844,5811385.499814,2017-12-06T15:16:01.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365597.595615,-3179292.206473,5852375.90828,2017-12-06T15:15:51.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.536979,-3474.418523,-4131.90419,2017-12-06T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.232742,-3518.017739,-4066.100707,2017-12-06T15:15:51.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:35Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:35Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171206T151537_20171206T151604_008600_00F452_AF64/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171206T151537_20171206T151604_008600_00F452_AF64/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171206T151537_20171206T151604_008600_00F452_AF64-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365597.595615, -3179292.206473, 5852375.90828], + "prePositionTime": "2017-12-06T15:15:51.000000Z", + "postPosition": + [-2419031.996697, -3214254.688844, 5811385.499814], + "postPositionTime": "2017-12-06T15:16:01.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.232742, -3518.017739, -4066.100707], + "preVelocityTime": "2017-12-06T15:15:51.000000", + "postVelocity": [-5332.536979, -3474.418523, -4131.90419], + "postVelocityTime": "2017-12-06T15:16:01.000000", + }, + }, + "ascendingNodeTime": "2017-12-06T14:42:06.525169Z", + "relative_start_time": 2027.3529641628265, + "relative_center_time": 2028.9141592979431, + "relative_end_time": 2030.475354194641, + "relative_sv_pre_time": 2024.4748311042786, + "relative_sv_post_time": 2034.4748311042786, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171218T151552_VV_C058-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_008775_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8775, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171218T151552_VV_C058-BURST", + "sensor": "C-SAR", + "startTime": "2017-12-18T15:15:53.567815Z", + "stopTime": "2017-12-18T15:15:56.690205Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171218T151537_20171218T151604_008775_00F9E6_C058/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171218T151552_VV_C058-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 18846654, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-12-18T15:15:52.418699", + "azimuthAnxTime": "2026.2509349898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171218T151537_20171218T151604_008775_00F9E6_C058/IW3/VV/5.xml", + ], + "temporalBaseline": -240, + "perpendicularBaseline": 173, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709403172-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171218T151552_VV_C058-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:22:40.182Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-12-18T15:15:53.567815Z", + "EndingDateTime": "2017-12-18T15:15:56.690205Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8775 }], + "GranuleUR": "S1_372326_IW3_20171218T151552_VV_C058-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-12-18T14:42:06.164301Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2509349898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-12-18T15:15:52.418699"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["18846654"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_008775_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419097.853322,-3214183.809274,5811402.357425,2017-12-18T15:16:00.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365663.713265,-3179221.197313,5852392.793649,2017-12-18T15:15:50.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.510525,-3474.431943,-4131.907005,2017-12-18T15:16:00.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.20697,-3518.030262,-4066.10345,2017-12-18T15:15:50.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:22:40Z" }, + { "Type": "Update", "Date": "2023-06-16T01:22:40Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171218T151537_20171218T151604_008775_00F9E6_C058/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171218T151537_20171218T151604_008775_00F9E6_C058/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171218T151537_20171218T151604_008775_00F9E6_C058-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365663.713265, -3179221.197313, 5852392.793649], + "prePositionTime": "2017-12-18T15:15:50.000000Z", + "postPosition": + [-2419097.853322, -3214183.809274, 5811402.357425], + "postPositionTime": "2017-12-18T15:16:00.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.20697, -3518.030262, -4066.10345], + "preVelocityTime": "2017-12-18T15:15:50.000000", + "postVelocity": [-5332.510525, -3474.431943, -4131.907005], + "postVelocityTime": "2017-12-18T15:16:00.000000", + }, + }, + "ascendingNodeTime": "2017-12-18T14:42:06.164301Z", + "relative_start_time": 2027.4035141468048, + "relative_center_time": 2028.9647092819214, + "relative_end_time": 2030.5259041786194, + "relative_sv_pre_time": 2023.835699081421, + "relative_sv_post_time": 2033.835699081421, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20171230T151551_VV_1A74-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_008950_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 8950, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20171230T151551_VV_1A74-BURST", + "sensor": "C-SAR", + "startTime": "2017-12-30T15:15:53.115819Z", + "stopTime": "2017-12-30T15:15:56.238209Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171230T151537_20171230T151604_008950_00FF7F_1A74/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20171230T151551_VV_1A74-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 19222541, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2017-12-30T15:15:51.970814", + "azimuthAnxTime": "2026.2544925461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171230T151537_20171230T151604_008950_00FF7F_1A74/IW3/VV/5.xml", + ], + "temporalBaseline": -228, + "perpendicularBaseline": 133, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709384331-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20171230T151551_VV_1A74-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:23:48.629Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2017-12-30T15:15:53.115819Z", + "EndingDateTime": "2017-12-30T15:15:56.238209Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8950 }], + "GranuleUR": "S1_372326_IW3_20171230T151551_VV_1A74-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2017-12-30T14:42:05.763131Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2544925461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2017-12-30T15:15:51.970814"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["19222541"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_008950_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419069.504274,-3214222.06615,5811392.363673,2017-12-30T15:16:00.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365635.239843,-3179259.573769,5852382.814808,2017-12-30T15:15:50.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.523103,-3474.419769,-4131.908452,2017-12-30T15:16:00.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.219256,-3518.018538,-4066.104989,2017-12-30T15:15:50.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:23:48Z" }, + { "Type": "Update", "Date": "2023-06-16T01:23:48Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171230T151537_20171230T151604_008950_00FF7F_1A74/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20171230T151537_20171230T151604_008950_00FF7F_1A74/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20171230T151537_20171230T151604_008950_00FF7F_1A74-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365635.239843, -3179259.573769, 5852382.814808], + "prePositionTime": "2017-12-30T15:15:50.000000Z", + "postPosition": + [-2419069.504274, -3214222.06615, 5811392.363673], + "postPositionTime": "2017-12-30T15:16:00.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.219256, -3518.018538, -4066.104989], + "preVelocityTime": "2017-12-30T15:15:50.000000", + "postVelocity": [-5332.523103, -3474.419769, -4131.908452], + "postVelocityTime": "2017-12-30T15:16:00.000000", + }, + }, + "ascendingNodeTime": "2017-12-30T14:42:05.763131Z", + "relative_start_time": 2027.352688074112, + "relative_center_time": 2028.91388297081, + "relative_end_time": 2030.4750781059265, + "relative_sv_pre_time": 2024.236869096756, + "relative_sv_post_time": 2034.236869096756, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180111T151551_VV_8A08-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_009125_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 9125, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180111T151551_VV_8A08-BURST", + "sensor": "C-SAR", + "startTime": "2018-01-11T15:15:52.654943Z", + "stopTime": "2018-01-11T15:15:55.777333Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180111T151536_20180111T151603_009125_010538_8A08/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20180111T151551_VV_8A08-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 19598428, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-01-11T15:15:51.514049", + "azimuthAnxTime": "2026.2571636587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180111T151536_20180111T151603_009125_010538_8A08/IW3/VV/5.xml", + ], + "temporalBaseline": -216, + "perpendicularBaseline": 77, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709406796-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180111T151551_VV_8A08-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:24:20.642Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-01-11T15:15:52.654943Z", + "EndingDateTime": "2018-01-11T15:15:55.777333Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 9125 }], + "GranuleUR": "S1_372326_IW3_20180111T151551_VV_8A08-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-01-11T14:42:05.252569Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2571636587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-01-11T15:15:51.514049"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["19598428"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_009125_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419040.547383,-3214284.234086,5811364.537766,2018-01-11T15:15:59.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365605.750497,-3179322.434285,5852355.120687,2018-01-11T15:15:49.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.576447,-3474.350091,-4131.921544,2018-01-11T15:15:59.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.272423,-3517.949707,-4066.118266,2018-01-11T15:15:49.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:24:20Z" }, + { "Type": "Update", "Date": "2023-06-16T01:24:20Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180111T151536_20180111T151603_009125_010538_8A08/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180111T151536_20180111T151603_009125_010538_8A08/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180111T151536_20180111T151603_009125_010538_8A08-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365605.750497, -3179322.434285, 5852355.120687], + "prePositionTime": "2018-01-11T15:15:49.000000Z", + "postPosition": + [-2419040.547383, -3214284.234086, 5811364.537766], + "postPositionTime": "2018-01-11T15:15:59.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.272423, -3517.949707, -4066.118266], + "preVelocityTime": "2018-01-11T15:15:49.000000", + "postVelocity": [-5332.576447, -3474.350091, -4131.921544], + "postVelocityTime": "2018-01-11T15:15:59.000000", + }, + }, + "ascendingNodeTime": "2018-01-11T14:42:05.252569Z", + "relative_start_time": 2027.4023740291595, + "relative_center_time": 2028.9635689258575, + "relative_end_time": 2030.5247640609741, + "relative_sv_pre_time": 2023.7474310398102, + "relative_sv_post_time": 2033.7474310398102, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180204T151550_VV_CB13-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_009475_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 9475, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180204T151550_VV_CB13-BURST", + "sensor": "C-SAR", + "startTime": "2018-02-04T15:15:51.827413Z", + "stopTime": "2018-02-04T15:15:54.949803Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180204T151535_20180204T151602_009475_0110AA_CB13/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20180204T151550_VV_CB13-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 20350203, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-02-04T15:15:50.684479", + "azimuthAnxTime": "2026.252317215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180204T151535_20180204T151602_009475_0110AA_CB13/IW3/VV/5.xml", + ], + "temporalBaseline": -192, + "perpendicularBaseline": 79, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709409620-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180204T151550_VV_CB13-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:29.403Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-02-04T15:15:51.827413Z", + "EndingDateTime": "2018-02-04T15:15:54.949803Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 9475 }], + "GranuleUR": "S1_372326_IW3_20180204T151550_VV_CB13-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-02-04T14:42:04.426963Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.252317215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-02-04T15:15:50.684479"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["20350203"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_009475_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419074.57565,-3214288.95764,5811339.105931,2018-02-04T15:15:59.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365639.848931,-3179327.304536,5852330.046085,2018-02-04T15:15:49.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.569211,-3474.335327,-4131.957224,2018-02-04T15:15:59.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.265665,-3517.935103,-4066.154031,2018-02-04T15:15:49.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:29Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:29Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180204T151535_20180204T151602_009475_0110AA_CB13/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180204T151535_20180204T151602_009475_0110AA_CB13/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180204T151535_20180204T151602_009475_0110AA_CB13-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365639.848931, -3179327.304536, 5852330.046085], + "prePositionTime": "2018-02-04T15:15:49.000000Z", + "postPosition": + [-2419074.57565, -3214288.95764, 5811339.105931], + "postPositionTime": "2018-02-04T15:15:59.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.265665, -3517.935103, -4066.154031], + "preVelocityTime": "2018-02-04T15:15:49.000000", + "postVelocity": [-5332.569211, -3474.335327, -4131.957224], + "postVelocityTime": "2018-02-04T15:15:59.000000", + }, + }, + "ascendingNodeTime": "2018-02-04T14:42:04.426963Z", + "relative_start_time": 2027.4004499912262, + "relative_center_time": 2028.9616448879242, + "relative_end_time": 2030.5228400230408, + "relative_sv_pre_time": 2024.5730369091034, + "relative_sv_post_time": 2034.5730369091034, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180216T151550_VV_8E21-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_009650_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 9650, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180216T151550_VV_8E21-BURST", + "sensor": "C-SAR", + "startTime": "2018-02-16T15:15:51.648793Z", + "stopTime": "2018-02-16T15:15:54.771183Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180216T151535_20180216T151602_009650_01166E_8E21/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20180216T151550_VV_8E21-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 20726090, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-02-16T15:15:50.514068", + "azimuthAnxTime": "2026.2565628839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180216T151535_20180216T151602_009650_01166E_8E21/IW3/VV/5.xml", + ], + "temporalBaseline": -180, + "perpendicularBaseline": 145, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709409293-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180216T151550_VV_8E21-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:09.860Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-02-16T15:15:51.648793Z", + "EndingDateTime": "2018-02-16T15:15:54.771183Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 9650 }], + "GranuleUR": "S1_372326_IW3_20180216T151550_VV_8E21-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-02-16T14:42:04.252189Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2565628839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-02-16T15:15:50.514068"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["20726090"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_009650_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419146.187323,-3214228.137692,5811327.53264,2018-02-16T15:15:58.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365711.674216,-3179266.36879,5852318.775687,2018-02-16T15:15:48.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.547374,-3474.347156,-4131.987616,2018-02-16T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.244765,-3517.946414,-4066.1842,2018-02-16T15:15:48.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:09Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:09Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180216T151535_20180216T151602_009650_01166E_8E21/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180216T151535_20180216T151602_009650_01166E_8E21/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180216T151535_20180216T151602_009650_01166E_8E21-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365711.674216, -3179266.36879, 5852318.775687], + "prePositionTime": "2018-02-16T15:15:48.000000Z", + "postPosition": + [-2419146.187323, -3214228.137692, 5811327.53264], + "postPositionTime": "2018-02-16T15:15:58.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.244765, -3517.946414, -4066.1842], + "preVelocityTime": "2018-02-16T15:15:48.000000", + "postVelocity": [-5332.547374, -3474.347156, -4131.987616], + "postVelocityTime": "2018-02-16T15:15:58.000000", + }, + }, + "ascendingNodeTime": "2018-02-16T14:42:04.252189Z", + "relative_start_time": 2027.3966040611267, + "relative_center_time": 2028.9577991962433, + "relative_end_time": 2030.5189940929413, + "relative_sv_pre_time": 2023.7478110790253, + "relative_sv_post_time": 2033.7478110790253, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180228T151550_VV_48CE-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_009825_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 9825, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180228T151550_VV_48CE-BURST", + "sensor": "C-SAR", + "startTime": "2018-02-28T15:15:51.626043Z", + "stopTime": "2018-02-28T15:15:54.748433Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180228T151535_20180228T151602_009825_011C39_48CE/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20180228T151550_VV_48CE-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 21101978, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-02-28T15:15:50.485152", + "azimuthAnxTime": "2026.2449326587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180228T151535_20180228T151602_009825_011C39_48CE/IW3/VV/5.xml", + ], + "temporalBaseline": -168, + "perpendicularBaseline": 106, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709409565-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180228T151550_VV_48CE-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:19:56.879Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-02-28T15:15:51.626043Z", + "EndingDateTime": "2018-02-28T15:15:54.748433Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 9825 }], + "GranuleUR": "S1_372326_IW3_20180228T151550_VV_48CE-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-02-28T14:42:04.236865Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2449326587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-02-28T15:15:50.485152"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["21101978"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_009825_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419155.800514,-3214269.183796,5811275.112448,2018-02-28T15:15:58.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365721.299835,-3179307.53913,5852266.940338,2018-02-28T15:15:48.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.545933,-3474.334341,-4132.046098,2018-02-28T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.243696,-3517.934379,-4066.242675,2018-02-28T15:15:48.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:19:56Z" }, + { "Type": "Update", "Date": "2023-06-16T01:19:56Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180228T151535_20180228T151602_009825_011C39_48CE/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180228T151535_20180228T151602_009825_011C39_48CE/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180228T151535_20180228T151602_009825_011C39_48CE-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365721.299835, -3179307.53913, 5852266.940338], + "prePositionTime": "2018-02-28T15:15:48.000000Z", + "postPosition": + [-2419155.800514, -3214269.183796, 5811275.112448], + "postPositionTime": "2018-02-28T15:15:58.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.243696, -3517.934379, -4066.242675], + "preVelocityTime": "2018-02-28T15:15:48.000000", + "postVelocity": [-5332.545933, -3474.334341, -4132.046098], + "postVelocityTime": "2018-02-28T15:15:58.000000", + }, + }, + "ascendingNodeTime": "2018-02-28T14:42:04.236865Z", + "relative_start_time": 2027.3891780376434, + "relative_center_time": 2028.95037317276, + "relative_end_time": 2030.511568069458, + "relative_sv_pre_time": 2023.7631349563599, + "relative_sv_post_time": 2033.7631349563599, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180312T151550_VV_641A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_010000_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10000, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180312T151550_VV_641A-BURST", + "sensor": "C-SAR", + "startTime": "2018-03-12T15:15:51.700750Z", + "stopTime": "2018-03-12T15:15:54.823140Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180312T151535_20180312T151602_010000_012219_641A/IW3/VV/5.tiff", + "pgeVersion": "002.84", + "fileName": "S1_372326_IW3_20180312T151550_VV_641A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 21477865, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2018-03-12T15:15:50.557803", + "azimuthAnxTime": "2026.237668215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180312T151535_20180312T151602_010000_012219_641A/IW3/VV/5.xml", + ], + "temporalBaseline": -156, + "perpendicularBaseline": 12, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709397726-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180312T151550_VV_641A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:23:07.797Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-03-12T15:15:51.700750Z", + "EndingDateTime": "2018-03-12T15:15:54.823140Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10000 }], + "GranuleUR": "S1_372326_IW3_20180312T151550_VV_641A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-03-12T14:42:04.314205Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.237668215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-03-12T15:15:50.557803"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["21477865"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_010000_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419108.01928,-3214363.511575,5811228.295701,2018-03-12T15:15:58.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365673.521459,-3179401.879278,5852220.489781,2018-03-12T15:15:48.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.545845,-3474.332498,-4132.082629,2018-03-12T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.243211,-3517.933773,-4066.279394,2018-03-12T15:15:48.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:23:07Z" }, + { "Type": "Update", "Date": "2023-06-16T01:23:07Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.84" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180312T151535_20180312T151602_010000_012219_641A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180312T151535_20180312T151602_010000_012219_641A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180312T151535_20180312T151602_010000_012219_641A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365673.521459, -3179401.879278, 5852220.489781], + "prePositionTime": "2018-03-12T15:15:48.000000Z", + "postPosition": + [-2419108.01928, -3214363.511575, 5811228.295701], + "postPositionTime": "2018-03-12T15:15:58.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.243211, -3517.933773, -4066.279394], + "preVelocityTime": "2018-03-12T15:15:48.000000", + "postVelocity": [-5332.545845, -3474.332498, -4132.082629], + "postVelocityTime": "2018-03-12T15:15:58.000000", + }, + }, + "ascendingNodeTime": "2018-03-12T14:42:04.314205Z", + "relative_start_time": 2027.3865451812744, + "relative_center_time": 2028.9477400779724, + "relative_end_time": 2030.5089349746704, + "relative_sv_pre_time": 2023.6857950687408, + "relative_sv_post_time": 2033.6857950687408, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180324T151550_VV_2AD0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_010175_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10175, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180324T151550_VV_2AD0-BURST", + "sensor": "C-SAR", + "startTime": "2018-03-24T15:15:51.772268Z", + "stopTime": "2018-03-24T15:15:54.894658Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180324T151535_20180324T151602_010175_0127C2_2AD0/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180324T151550_VV_2AD0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 21853753, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-03-24T15:15:50.623170", + "azimuthAnxTime": "2026.2276416587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180324T151535_20180324T151602_010175_0127C2_2AD0/IW3/VV/5.xml", + ], + "temporalBaseline": -144, + "perpendicularBaseline": -81, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709389458-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180324T151550_VV_2AD0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:16.162Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-03-24T15:15:51.772268Z", + "EndingDateTime": "2018-03-24T15:15:54.894658Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10175 }], + "GranuleUR": "S1_372326_IW3_20180324T151550_VV_2AD0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-03-24T14:42:04.390724Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2276416587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-03-24T15:15:50.623170"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["21853753"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_010175_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419059.1941,-3214454.726643,5811180.853732,2018-03-24T15:15:58.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365624.768416,-3179493.004631,5852173.457268,2018-03-24T15:15:48.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.538831,-3474.340868,-4132.123516,2018-03-24T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.235797,-3517.943373,-4066.320411,2018-03-24T15:15:48.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:15Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:15Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180324T151535_20180324T151602_010175_0127C2_2AD0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180324T151535_20180324T151602_010175_0127C2_2AD0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180324T151535_20180324T151602_010175_0127C2_2AD0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365624.768416, -3179493.004631, 5852173.457268], + "prePositionTime": "2018-03-24T15:15:48.000000Z", + "postPosition": + [-2419059.1941, -3214454.726643, 5811180.853732], + "postPositionTime": "2018-03-24T15:15:58.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.235797, -3517.943373, -4066.320411], + "preVelocityTime": "2018-03-24T15:15:48.000000", + "postVelocity": [-5332.538831, -3474.340868, -4132.123516], + "postVelocityTime": "2018-03-24T15:15:58.000000", + }, + }, + "ascendingNodeTime": "2018-03-24T14:42:04.390724Z", + "relative_start_time": 2027.3815441131592, + "relative_center_time": 2028.9427392482758, + "relative_end_time": 2030.5039341449738, + "relative_sv_pre_time": 2023.6092760562897, + "relative_sv_post_time": 2033.6092760562897, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180405T151551_VV_CC59-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_010350_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10350, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180405T151551_VV_CC59-BURST", + "sensor": "C-SAR", + "startTime": "2018-04-05T15:15:52.341314Z", + "stopTime": "2018-04-05T15:15:55.463704Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180405T151536_20180405T151603_010350_012D73_CC59/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180405T151551_VV_CC59-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 22229640, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-04-05T15:15:51.194256", + "azimuthAnxTime": "2026.2231201024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180405T151536_20180405T151603_010350_012D73_CC59/IW3/VV/5.xml", + ], + "temporalBaseline": -132, + "perpendicularBaseline": 22, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709409218-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180405T151551_VV_CC59-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:04.044Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-04-05T15:15:52.341314Z", + "EndingDateTime": "2018-04-05T15:15:55.463704Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10350 }], + "GranuleUR": "S1_372326_IW3_20180405T151551_VV_CC59-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-04-05T14:42:04.965685Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2231201024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-04-05T15:15:51.194256"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["22229640"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_010350_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419196.881633,-3214373.326098,5811153.45775,2018-04-05T15:15:59.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365761.933599,-3179412.735244,5852146.499671,2018-04-05T15:15:49.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.590152,-3474.228071,-4132.167377,2018-04-05T15:15:59.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.288967,-3517.829939,-4066.364234,2018-04-05T15:15:49.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180405T151536_20180405T151603_010350_012D73_CC59/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180405T151536_20180405T151603_010350_012D73_CC59/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180405T151536_20180405T151603_010350_012D73_CC59-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365761.933599, -3179412.735244, 5852146.499671], + "prePositionTime": "2018-04-05T15:15:49.000000Z", + "postPosition": + [-2419196.881633, -3214373.326098, 5811153.45775], + "postPositionTime": "2018-04-05T15:15:59.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.288967, -3517.829939, -4066.364234], + "preVelocityTime": "2018-04-05T15:15:49.000000", + "postVelocity": [-5332.590152, -3474.228071, -4132.167377], + "postVelocityTime": "2018-04-05T15:15:59.000000", + }, + }, + "ascendingNodeTime": "2018-04-05T14:42:04.965685Z", + "relative_start_time": 2027.3756291866302, + "relative_center_time": 2028.9368243217468, + "relative_end_time": 2030.4980192184448, + "relative_sv_pre_time": 2024.034315109253, + "relative_sv_post_time": 2034.034315109253, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180417T151551_VV_657E-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_010525_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10525, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180417T151551_VV_657E-BURST", + "sensor": "C-SAR", + "startTime": "2018-04-17T15:15:52.505101Z", + "stopTime": "2018-04-17T15:15:55.627491Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180417T151536_20180417T151603_010525_01330A_657E/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180417T151551_VV_657E-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 22605527, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-04-17T15:15:51.360098", + "azimuthAnxTime": "2026.214789215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180417T151536_20180417T151603_010525_01330A_657E/IW3/VV/5.xml", + ], + "temporalBaseline": -120, + "perpendicularBaseline": 18, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709386995-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180417T151551_VV_657E-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:19:18.044Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-04-17T15:15:52.505101Z", + "EndingDateTime": "2018-04-17T15:15:55.627491Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10525 }], + "GranuleUR": "S1_372326_IW3_20180417T151551_VV_657E-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-04-17T14:42:05.139866Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.214789215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-04-17T15:15:51.360098"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["22605527"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_010525_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419218.612916,-3214395.435585,5811131.136034,2018-04-17T15:15:59.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365784.581135,-3179433.915383,5852124.494522,2018-04-17T15:15:49.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.498483,-3474.320939,-4132.198932,2018-04-17T15:15:59.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.197429,-3517.922931,-4066.396012,2018-04-17T15:15:49.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:19:17Z" }, + { "Type": "Update", "Date": "2023-06-16T01:19:17Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180417T151536_20180417T151603_010525_01330A_657E/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180417T151536_20180417T151603_010525_01330A_657E/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180417T151536_20180417T151603_010525_01330A_657E-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365784.581135, -3179433.915383, 5852124.494522], + "prePositionTime": "2018-04-17T15:15:49.000000Z", + "postPosition": + [-2419218.612916, -3214395.435585, 5811131.136034], + "postPositionTime": "2018-04-17T15:15:59.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.197429, -3517.922931, -4066.396012], + "preVelocityTime": "2018-04-17T15:15:49.000000", + "postVelocity": [-5332.498483, -3474.320939, -4132.198932], + "postVelocityTime": "2018-04-17T15:15:59.000000", + }, + }, + "ascendingNodeTime": "2018-04-17T14:42:05.139866Z", + "relative_start_time": 2027.3652348518372, + "relative_center_time": 2028.9264299869537, + "relative_end_time": 2030.4876248836517, + "relative_sv_pre_time": 2023.8601338863373, + "relative_sv_post_time": 2033.8601338863373, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180429T151552_VV_AA9E-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_010700_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10700, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180429T151552_VV_AA9E-BURST", + "sensor": "C-SAR", + "startTime": "2018-04-29T15:15:53.199712Z", + "stopTime": "2018-04-29T15:15:56.322102Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180429T151537_20180429T151604_010700_0138A6_AA9E/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180429T151552_VV_AA9E-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 22981415, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-04-29T15:15:52.046487", + "azimuthAnxTime": "2026.2063817713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180429T151537_20180429T151604_010700_0138A6_AA9E/IW3/VV/5.xml", + ], + "temporalBaseline": -108, + "perpendicularBaseline": 106, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709381856-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180429T151552_VV_AA9E-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:03.587Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-04-29T15:15:53.199712Z", + "EndingDateTime": "2018-04-29T15:15:56.322102Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10700 }], + "GranuleUR": "S1_372326_IW3_20180429T151552_VV_AA9E-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-04-29T14:42:05.834528Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2063817713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-04-29T15:15:52.046487"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["22981415"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_010700_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419326.971767,-3214332.156122,5811121.070961,2018-04-29T15:16:00.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365893.073219,-3179370.992371,5852114.824894,2018-04-29T15:15:50.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.484517,-3474.285651,-4132.238407,2018-04-29T15:16:00.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.184731,-3517.886912,-4066.4356,2018-04-29T15:15:50.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180429T151537_20180429T151604_010700_0138A6_AA9E/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180429T151537_20180429T151604_010700_0138A6_AA9E/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180429T151537_20180429T151604_010700_0138A6_AA9E-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365893.073219, -3179370.992371, 5852114.824894], + "prePositionTime": "2018-04-29T15:15:50.000000Z", + "postPosition": + [-2419326.971767, -3214332.156122, 5811121.070961], + "postPositionTime": "2018-04-29T15:16:00.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.184731, -3517.886912, -4066.4356], + "preVelocityTime": "2018-04-29T15:15:50.000000", + "postVelocity": [-5332.484517, -3474.285651, -4132.238407], + "postVelocityTime": "2018-04-29T15:16:00.000000", + }, + }, + "ascendingNodeTime": "2018-04-29T14:42:05.834528Z", + "relative_start_time": 2027.3651840686798, + "relative_center_time": 2028.9263792037964, + "relative_end_time": 2030.4875741004944, + "relative_sv_pre_time": 2024.1654720306396, + "relative_sv_post_time": 2034.1654720306396, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180511T151552_VV_7761-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_010875_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 10875, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180511T151552_VV_7761-BURST", + "sensor": "C-SAR", + "startTime": "2018-05-11T15:15:53.709127Z", + "stopTime": "2018-05-11T15:15:56.831517Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180511T151537_20180511T151604_010875_013E4C_7761/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180511T151552_VV_7761-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 23357302, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-05-11T15:15:52.549734", + "azimuthAnxTime": "2026.1974741024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180511T151537_20180511T151604_010875_013E4C_7761/IW3/VV/5.xml", + ], + "temporalBaseline": -96, + "perpendicularBaseline": 8, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709411810-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180511T151552_VV_7761-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:41.215Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-05-11T15:15:53.709127Z", + "EndingDateTime": "2018-05-11T15:15:56.831517Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10875 }], + "GranuleUR": "S1_372326_IW3_20180511T151552_VV_7761-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-05-11T14:42:06.346900Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.1974741024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-05-11T15:15:52.549734"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["23357302"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_010875_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419258.679833,-3214442.969653,5811096.842232,2018-05-11T15:16:00.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365824.217133,-3179482.504858,5852090.524992,2018-05-11T15:15:50.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.541299,-3474.215143,-4132.231056,2018-05-11T15:16:00.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.240764,-3517.817622,-4066.428713,2018-05-11T15:15:50.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:40Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:40Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180511T151537_20180511T151604_010875_013E4C_7761/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180511T151537_20180511T151604_010875_013E4C_7761/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180511T151537_20180511T151604_010875_013E4C_7761-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365824.217133, -3179482.504858, 5852090.524992], + "prePositionTime": "2018-05-11T15:15:50.000000Z", + "postPosition": + [-2419258.679833, -3214442.969653, 5811096.842232], + "postPositionTime": "2018-05-11T15:16:00.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.240764, -3517.817622, -4066.428713], + "preVelocityTime": "2018-05-11T15:15:50.000000", + "postVelocity": [-5332.541299, -3474.215143, -4132.231056], + "postVelocityTime": "2018-05-11T15:16:00.000000", + }, + }, + "ascendingNodeTime": "2018-05-11T14:42:06.346900Z", + "relative_start_time": 2027.3622269630432, + "relative_center_time": 2028.9234218597412, + "relative_end_time": 2030.4846169948578, + "relative_sv_pre_time": 2023.653100013733, + "relative_sv_post_time": 2033.653100013733, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180523T151553_VV_AF3E-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_011050_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11050, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180523T151553_VV_AF3E-BURST", + "sensor": "C-SAR", + "startTime": "2018-05-23T15:15:54.493322Z", + "stopTime": "2018-05-23T15:15:57.615712Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180523T151538_20180523T151605_011050_0143FD_AF3E/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180523T151553_VV_AF3E-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 23733189, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-05-23T15:15:53.340094", + "azimuthAnxTime": "2026.209595215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180523T151538_20180523T151605_011050_0143FD_AF3E/IW3/VV/5.xml", + ], + "temporalBaseline": -84, + "perpendicularBaseline": 12, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709407416-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180523T151553_VV_AF3E-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:24:11.207Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-05-23T15:15:54.493322Z", + "EndingDateTime": "2018-05-23T15:15:57.615712Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11050 }], + "GranuleUR": "S1_372326_IW3_20180523T151553_VV_AF3E-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-05-23T14:42:07.125574Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.209595215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-05-23T15:15:53.340094"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["23733189"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_011050_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419235.481901,-3214417.024452,5811115.472914,2018-05-23T15:16:01.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365800.873245,-3179456.47762,5852108.972198,2018-05-23T15:15:51.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.555994,-3474.223454,-4132.212865,2018-05-23T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.255229,-3517.825727,-4066.410194,2018-05-23T15:15:51.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:24:10Z" }, + { "Type": "Update", "Date": "2023-06-16T01:24:10Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180523T151538_20180523T151605_011050_0143FD_AF3E/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180523T151538_20180523T151605_011050_0143FD_AF3E/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180523T151538_20180523T151605_011050_0143FD_AF3E-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365800.873245, -3179456.47762, 5852108.972198], + "prePositionTime": "2018-05-23T15:15:51.000000Z", + "postPosition": + [-2419235.481901, -3214417.024452, 5811115.472914], + "postPositionTime": "2018-05-23T15:16:01.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.255229, -3517.825727, -4066.410194], + "preVelocityTime": "2018-05-23T15:15:51.000000", + "postVelocity": [-5332.555994, -3474.223454, -4132.212865], + "postVelocityTime": "2018-05-23T15:16:01.000000", + }, + }, + "ascendingNodeTime": "2018-05-23T14:42:07.125574Z", + "relative_start_time": 2027.367747783661, + "relative_center_time": 2028.928942680359, + "relative_end_time": 2030.4901378154755, + "relative_sv_pre_time": 2023.8744258880615, + "relative_sv_post_time": 2033.8744258880615, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180604T151553_VV_B9AA-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_011225_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11225, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180604T151553_VV_B9AA-BURST", + "sensor": "C-SAR", + "startTime": "2018-06-04T15:15:55.102208Z", + "stopTime": "2018-06-04T15:15:58.224598Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180604T151539_20180604T151606_011225_0149A4_B9AA/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180604T151553_VV_B9AA-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 24109077, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-06-04T15:15:53.946925", + "azimuthAnxTime": "2026.2041236587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180604T151539_20180604T151606_011225_0149A4_B9AA/IW3/VV/5.xml", + ], + "temporalBaseline": -72, + "perpendicularBaseline": -72, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709394925-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180604T151553_VV_B9AA-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:07.527Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-06-04T15:15:55.102208Z", + "EndingDateTime": "2018-06-04T15:15:58.224598Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11225 }], + "GranuleUR": "S1_372326_IW3_20180604T151553_VV_B9AA-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-06-04T14:42:07.737574Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2041236587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-06-04T15:15:53.946925"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["24109077"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_011225_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419170.525479,-3214511.763837,5811104.748669,2018-06-04T15:16:02.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365736.383377,-3179550.662823,5852098.229102,2018-06-04T15:15:52.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.509805,-3474.27848,-4132.210758,2018-06-04T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.2081,-3517.881568,-4066.408543,2018-06-04T15:15:52.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:07Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:07Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180604T151539_20180604T151606_011225_0149A4_B9AA/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180604T151539_20180604T151606_011225_0149A4_B9AA/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180604T151539_20180604T151606_011225_0149A4_B9AA-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365736.383377, -3179550.662823, 5852098.229102], + "prePositionTime": "2018-06-04T15:15:52.000000Z", + "postPosition": + [-2419170.525479, -3214511.763837, 5811104.748669], + "postPositionTime": "2018-06-04T15:16:02.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.2081, -3517.881568, -4066.408543], + "preVelocityTime": "2018-06-04T15:15:52.000000", + "postVelocity": [-5332.509805, -3474.27848, -4132.210758], + "postVelocityTime": "2018-06-04T15:16:02.000000", + }, + }, + "ascendingNodeTime": "2018-06-04T14:42:07.737574Z", + "relative_start_time": 2027.3646337985992, + "relative_center_time": 2028.9258289337158, + "relative_end_time": 2030.4870238304138, + "relative_sv_pre_time": 2024.2624258995056, + "relative_sv_post_time": 2034.2624258995056, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180616T151554_VV_0C7C-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_011400_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11400, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180616T151554_VV_0C7C-BURST", + "sensor": "C-SAR", + "startTime": "2018-06-16T15:15:56.029363Z", + "stopTime": "2018-06-16T15:15:59.151753Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180616T151540_20180616T151607_011400_014F02_0C7C/IW3/VV/5.tiff", + "pgeVersion": "002.90", + "fileName": "S1_372326_IW3_20180616T151554_VV_0C7C-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 24484964, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-06-16T15:15:54.872025", + "azimuthAnxTime": "2026.2074056587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180616T151540_20180616T151607_011400_014F02_0C7C/IW3/VV/5.xml", + ], + "temporalBaseline": -60, + "perpendicularBaseline": 21, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709392495-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180616T151554_VV_0C7C-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:18:18.679Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-06-16T15:15:56.029363Z", + "EndingDateTime": "2018-06-16T15:15:59.151753Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11400 }], + "GranuleUR": "S1_372326_IW3_20180616T151554_VV_0C7C-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-06-16T14:42:08.659574Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2074056587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-06-16T15:15:54.872025"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["24484964"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_011400_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419223.854853,-3214391.792459,5811132.675107,2018-06-16T15:16:03.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365789.758053,-3179430.443627,5852126.09291,2018-06-16T15:15:53.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.504929,-3474.303851,-4132.204854,2018-06-16T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.20394,-3517.905789,-4066.401959,2018-06-16T15:15:53.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:18:18Z" }, + { "Type": "Update", "Date": "2023-06-16T01:18:18Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.90" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180616T151540_20180616T151607_011400_014F02_0C7C/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180616T151540_20180616T151607_011400_014F02_0C7C/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180616T151540_20180616T151607_011400_014F02_0C7C-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365789.758053, -3179430.443627, 5852126.09291], + "prePositionTime": "2018-06-16T15:15:53.000000Z", + "postPosition": + [-2419223.854853, -3214391.792459, 5811132.675107], + "postPositionTime": "2018-06-16T15:16:03.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.20394, -3517.905789, -4066.401959], + "preVelocityTime": "2018-06-16T15:15:53.000000", + "postVelocity": [-5332.504929, -3474.303851, -4132.204854], + "postVelocityTime": "2018-06-16T15:16:03.000000", + }, + }, + "ascendingNodeTime": "2018-06-16T14:42:08.659574Z", + "relative_start_time": 2027.3697888851166, + "relative_center_time": 2028.9309840202332, + "relative_end_time": 2030.4921789169312, + "relative_sv_pre_time": 2024.3404259681702, + "relative_sv_post_time": 2034.3404259681702, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180628T151555_VV_4673-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_011575_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11575, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180628T151555_VV_4673-BURST", + "sensor": "C-SAR", + "startTime": "2018-06-28T15:15:56.656881Z", + "stopTime": "2018-06-28T15:15:59.779271Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180628T151540_20180628T151607_011575_015476_4673/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180628T151555_VV_4673-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 24860852, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-06-28T15:15:55.501598", + "azimuthAnxTime": "2026.2032096587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180628T151540_20180628T151607_011575_015476_4673/IW3/VV/5.xml", + ], + "temporalBaseline": -48, + "perpendicularBaseline": 78, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709386770-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180628T151555_VV_4673-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:24.860Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-06-28T15:15:56.656881Z", + "EndingDateTime": "2018-06-28T15:15:59.779271Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11575 }], + "GranuleUR": "S1_372326_IW3_20180628T151555_VV_4673-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-06-28T14:42:09.294898Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2032096587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-06-28T15:15:55.501598"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["24860852"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_011575_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419308.137083,-3214378.083452,5811117.724146,2018-06-28T15:16:03.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365874.635745,-3179416.573397,5852111.49579,2018-06-28T15:15:53.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.444978,-3474.320168,-4132.240002,2018-06-28T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.144801,-3517.921704,-4066.437561,2018-06-28T15:15:53.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:24Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:24Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180628T151540_20180628T151607_011575_015476_4673/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180628T151540_20180628T151607_011575_015476_4673/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180628T151540_20180628T151607_011575_015476_4673-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365874.635745, -3179416.573397, 5852111.49579], + "prePositionTime": "2018-06-28T15:15:53.000000Z", + "postPosition": + [-2419308.137083, -3214378.083452, 5811117.724146], + "postPositionTime": "2018-06-28T15:16:03.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.144801, -3517.921704, -4066.437561], + "preVelocityTime": "2018-06-28T15:15:53.000000", + "postVelocity": [-5332.444978, -3474.320168, -4132.240002], + "postVelocityTime": "2018-06-28T15:16:03.000000", + }, + }, + "ascendingNodeTime": "2018-06-28T14:42:09.294898Z", + "relative_start_time": 2027.3619830608368, + "relative_center_time": 2028.9231779575348, + "relative_end_time": 2030.4843728542328, + "relative_sv_pre_time": 2023.705101966858, + "relative_sv_post_time": 2033.705101966858, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180710T151556_VV_A62C-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_011750_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11750, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180710T151556_VV_A62C-BURST", + "sensor": "C-SAR", + "startTime": "2018-07-10T15:15:57.307927Z", + "stopTime": "2018-07-10T15:16:00.430317Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180710T151541_20180710T151608_011750_0159DF_A62C/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180710T151556_VV_A62C-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 25236739, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-07-10T15:15:56.150589", + "azimuthAnxTime": "2026.2048085461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180710T151541_20180710T151608_011750_0159DF_A62C/IW3/VV/5.xml", + ], + "temporalBaseline": -36, + "perpendicularBaseline": 42, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709405146-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180710T151556_VV_A62C-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:04.920Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-07-10T15:15:57.307927Z", + "EndingDateTime": "2018-07-10T15:16:00.430317Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11750 }], + "GranuleUR": "S1_372326_IW3_20180710T151556_VV_A62C-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-07-10T14:42:09.940470Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2048085461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-07-10T15:15:56.150589"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["25236739"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_011750_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419238.204142,-3214373.419459,5811138.009799,2018-07-10T15:16:04.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365804.256355,-3179411.860825,5852131.363793,2018-07-10T15:15:54.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.489979,-3474.324942,-4132.198479,2018-07-10T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.189113,-3517.926621,-4066.395552,2018-07-10T15:15:54.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:04Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:04Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180710T151541_20180710T151608_011750_0159DF_A62C/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180710T151541_20180710T151608_011750_0159DF_A62C/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180710T151541_20180710T151608_011750_0159DF_A62C-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365804.256355, -3179411.860825, 5852131.363793], + "prePositionTime": "2018-07-10T15:15:54.000000Z", + "postPosition": + [-2419238.204142, -3214373.419459, 5811138.009799], + "postPositionTime": "2018-07-10T15:16:04.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.189113, -3517.926621, -4066.395552], + "preVelocityTime": "2018-07-10T15:15:54.000000", + "postVelocity": [-5332.489979, -3474.324942, -4132.198479], + "postVelocityTime": "2018-07-10T15:16:04.000000", + }, + }, + "ascendingNodeTime": "2018-07-10T14:42:09.940470Z", + "relative_start_time": 2027.3674569129944, + "relative_center_time": 2028.928652048111, + "relative_end_time": 2030.489846944809, + "relative_sv_pre_time": 2024.0595300197601, + "relative_sv_post_time": 2034.0595300197601, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180722T151557_VV_2ADA-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_011925_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 11925, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180722T151557_VV_2ADA-BURST", + "sensor": "C-SAR", + "startTime": "2018-07-22T15:15:58.349797Z", + "stopTime": "2018-07-22T15:16:01.472187Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180722T151542_20180722T151609_011925_015F39_2ADA/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180722T151557_VV_2ADA-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 25612626, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-07-22T15:15:57.202738", + "azimuthAnxTime": "2026.2162943276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180722T151542_20180722T151609_011925_015F39_2ADA/IW3/VV/5.xml", + ], + "temporalBaseline": -24, + "perpendicularBaseline": 19, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377664-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180722T151557_VV_2ADA-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:08.011Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-07-22T15:15:58.349797Z", + "EndingDateTime": "2018-07-22T15:16:01.472187Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 11925 }], + "GranuleUR": "S1_372326_IW3_20180722T151557_VV_2ADA-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-07-22T14:42:10.981585Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2162943276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-07-22T15:15:57.202738"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["25612626"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_011925_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419237.190233,-3214390.150085,5811112.556057,2018-07-22T15:16:05.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365802.100365,-3179429.970441,5852106.010071,2018-07-22T15:15:55.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.604008,-3474.186753,-4132.208521,2018-07-22T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.303475,-3517.789005,-4066.405499,2018-07-22T15:15:55.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:07Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:07Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180722T151542_20180722T151609_011925_015F39_2ADA/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180722T151542_20180722T151609_011925_015F39_2ADA/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180722T151542_20180722T151609_011925_015F39_2ADA-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365802.100365, -3179429.970441, 5852106.010071], + "prePositionTime": "2018-07-22T15:15:55.000000Z", + "postPosition": + [-2419237.190233, -3214390.150085, 5811112.556057], + "postPositionTime": "2018-07-22T15:16:05.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.303475, -3517.789005, -4066.405499], + "preVelocityTime": "2018-07-22T15:15:55.000000", + "postVelocity": [-5332.604008, -3474.186753, -4132.208521], + "postVelocityTime": "2018-07-22T15:16:05.000000", + }, + }, + "ascendingNodeTime": "2018-07-22T14:42:10.981585Z", + "relative_start_time": 2027.3682119846344, + "relative_center_time": 2028.929407119751, + "relative_end_time": 2030.490602016449, + "relative_sv_pre_time": 2024.0184149742126, + "relative_sv_post_time": 2034.0184149742126, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180803T151557_VV_BCCE-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_012100_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12100, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180803T151557_VV_BCCE-BURST", + "sensor": "C-SAR", + "startTime": "2018-08-03T15:15:58.879995Z", + "stopTime": "2018-08-03T15:16:02.002385Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180803T151542_20180803T151609_012100_01647D_BCCE/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180803T151557_VV_BCCE-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 25988514, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-08-03T15:15:57.724728", + "azimuthAnxTime": "2026.2040591024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180803T151542_20180803T151609_012100_01647D_BCCE/IW3/VV/5.xml", + ], + "temporalBaseline": -12, + "perpendicularBaseline": 13, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709397542-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180803T151557_VV_BCCE-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:38.114Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-08-03T15:15:58.879995Z", + "EndingDateTime": "2018-08-03T15:16:02.002385Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12100 }], + "GranuleUR": "S1_372326_IW3_20180803T151557_VV_BCCE-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-08-03T14:42:11.516508Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2040591024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-08-03T15:15:57.724728"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["25988514"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_012100_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419261.483672,-3214437.494075,5811103.439082,2018-08-03T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365827.32821,-3179476.697112,5852097.125205,2018-08-03T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.51059,-3474.248456,-4132.231367,2018-08-03T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.209984,-3517.850768,-4066.429062,2018-08-03T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:37Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:37Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180803T151542_20180803T151609_012100_01647D_BCCE/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180803T151542_20180803T151609_012100_01647D_BCCE/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180803T151542_20180803T151609_012100_01647D_BCCE-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365827.32821, -3179476.697112, 5852097.125205], + "prePositionTime": "2018-08-03T15:15:56.000000Z", + "postPosition": + [-2419261.483672, -3214437.494075, 5811103.439082], + "postPositionTime": "2018-08-03T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.209984, -3517.850768, -4066.429062], + "preVelocityTime": "2018-08-03T15:15:56.000000", + "postVelocity": [-5332.51059, -3474.248456, -4132.231367], + "postVelocityTime": "2018-08-03T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2018-08-03T14:42:11.516508Z", + "relative_start_time": 2027.3634870052338, + "relative_center_time": 2028.9246819019318, + "relative_end_time": 2030.4858767986298, + "relative_sv_pre_time": 2024.483491897583, + "relative_sv_post_time": 2034.483491897583, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_012275_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12275, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", + "sensor": "C-SAR", + "startTime": "2018-08-15T15:15:59.530553Z", + "stopTime": "2018-08-15T15:16:02.652943Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 26364401, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-08-15T15:15:58.385550", + "azimuthAnxTime": "2026.218343215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.xml", + ], + "temporalBaseline": 0, + "perpendicularBaseline": 0, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709386819-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:24:43.705Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-08-15T15:15:59.530553Z", + "EndingDateTime": "2018-08-15T15:16:02.652943Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12275 }], + "GranuleUR": "S1_372326_IW3_20180815T151558_VV_6BD3-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-08-15T14:42:12.162110Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.218343215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-08-15T15:15:58.385550"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["26364401"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_012275_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419229.546207,-3214436.538423,5811112.703184,2018-08-15T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365795.260173,-3179475.675198,5852106.264147,2018-08-15T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.523806,-3474.255053,-4132.218956,2018-08-15T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.222875,-3517.857432,-4066.416445,2018-08-15T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:24:43Z" }, + { "Type": "Update", "Date": "2023-06-16T01:24:43Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180815T151543_20180815T151610_012275_0169E6_6BD3-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": { + "stateVectors": + { + "positions": + { + "prePosition": [-2365795.260173, -3179475.675198, 5852106.264147], + "prePositionTime": "2018-08-15T15:15:56.000000Z", + "postPosition": + [-2419229.546207, -3214436.538423, 5811112.703184], + "postPositionTime": "2018-08-15T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.222875, -3517.857432, -4066.416445], + "preVelocityTime": "2018-08-15T15:15:56.000000", + "postVelocity": [-5332.523806, -3474.255053, -4132.218956], + "postVelocityTime": "2018-08-15T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2018-08-15T14:42:12.162110Z", + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180827T151559_VV_4D51-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_012450_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12450, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180827T151559_VV_4D51-BURST", + "sensor": "C-SAR", + "startTime": "2018-08-27T15:16:00.137822Z", + "stopTime": "2018-08-27T15:16:03.260212Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180827T151544_20180827T151611_012450_016F57_4D51/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180827T151559_VV_4D51-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 26740288, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-08-27T15:15:59.003097", + "azimuthAnxTime": "2026.2287428839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180827T151544_20180827T151611_012450_016F57_4D51/IW3/VV/5.xml", + ], + "temporalBaseline": 12, + "perpendicularBaseline": 9, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709383451-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180827T151559_VV_4D51-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:18:23.192Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-08-27T15:16:00.137822Z", + "EndingDateTime": "2018-08-27T15:16:03.260212Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12450 }], + "GranuleUR": "S1_372326_IW3_20180827T151559_VV_4D51-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-08-27T14:42:12.772104Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2287428839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-08-27T15:15:59.003097"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["26740288"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_012450_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419213.765192,-3214401.275986,5811128.66643,2018-08-27T15:16:07.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365779.78022,-3179439.705738,5852122.076619,2018-08-27T15:15:57.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.493791,-3474.325931,-4132.204093,2018-08-27T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.192687,-3517.927991,-4066.401175,2018-08-27T15:15:57.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:18:22Z" }, + { "Type": "Update", "Date": "2023-06-16T01:18:22Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180827T151544_20180827T151611_012450_016F57_4D51/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180827T151544_20180827T151611_012450_016F57_4D51/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180827T151544_20180827T151611_012450_016F57_4D51-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365779.78022, -3179439.705738, 5852122.076619], + "prePositionTime": "2018-08-27T15:15:57.000000Z", + "postPosition": + [-2419213.765192, -3214401.275986, 5811128.66643], + "postPositionTime": "2018-08-27T15:16:07.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.192687, -3517.927991, -4066.401175], + "preVelocityTime": "2018-08-27T15:15:57.000000", + "postVelocity": [-5332.493791, -3474.325931, -4132.204093], + "postVelocityTime": "2018-08-27T15:16:07.000000", + }, + }, + "ascendingNodeTime": "2018-08-27T14:42:12.772104Z", + "relative_start_time": 2027.3657178878784, + "relative_center_time": 2028.926913022995, + "relative_end_time": 2030.488107919693, + "relative_sv_pre_time": 2024.227895975113, + "relative_sv_post_time": 2034.227895975113, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180908T151559_VV_C2DF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_012625_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12625, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180908T151559_VV_C2DF-BURST", + "sensor": "C-SAR", + "startTime": "2018-09-08T15:16:00.720327Z", + "stopTime": "2018-09-08T15:16:03.842717Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180908T151544_20180908T151611_012625_0174BD_C2DF/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180908T151559_VV_C2DF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 27116176, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-09-08T15:15:59.569158", + "azimuthAnxTime": "2026.2142415461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180908T151544_20180908T151611_012625_0174BD_C2DF/IW3/VV/5.xml", + ], + "temporalBaseline": 24, + "perpendicularBaseline": 78, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709403966-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180908T151559_VV_C2DF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:24:08.900Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-09-08T15:16:00.720327Z", + "EndingDateTime": "2018-09-08T15:16:03.842717Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12625 }], + "GranuleUR": "S1_372326_IW3_20180908T151559_VV_C2DF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-09-08T14:42:13.349500Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2142415461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-09-08T15:15:59.569158"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["27116176"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_012625_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419270.980522,-3214344.16889,5811142.521621,2018-09-08T15:16:07.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365837.004003,-3179382.780035,5852135.932303,2018-09-08T15:15:57.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.492653,-3474.308156,-4132.204158,2018-09-08T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.192163,-3517.909493,-4066.401224,2018-09-08T15:15:57.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:24:08Z" }, + { "Type": "Update", "Date": "2023-06-16T01:24:08Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180908T151544_20180908T151611_012625_0174BD_C2DF/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180908T151544_20180908T151611_012625_0174BD_C2DF/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180908T151544_20180908T151611_012625_0174BD_C2DF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365837.004003, -3179382.780035, 5852135.932303], + "prePositionTime": "2018-09-08T15:15:57.000000Z", + "postPosition": + [-2419270.980522, -3214344.16889, 5811142.521621], + "postPositionTime": "2018-09-08T15:16:07.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.192163, -3517.909493, -4066.401224], + "preVelocityTime": "2018-09-08T15:15:57.000000", + "postVelocity": [-5332.492653, -3474.308156, -4132.204158], + "postVelocityTime": "2018-09-08T15:16:07.000000", + }, + }, + "ascendingNodeTime": "2018-09-08T14:42:13.349500Z", + "relative_start_time": 2027.37082695961, + "relative_center_time": 2028.932021856308, + "relative_end_time": 2030.4932169914246, + "relative_sv_pre_time": 2023.6505000591278, + "relative_sv_post_time": 2033.6505000591278, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20180920T151559_VV_576E-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_012800_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12800, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20180920T151559_VV_576E-BURST", + "sensor": "C-SAR", + "startTime": "2018-09-20T15:16:01.059926Z", + "stopTime": "2018-09-20T15:16:04.182316Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180920T151545_20180920T151612_012800_017A17_576E/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20180920T151559_VV_576E-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 27492063, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-09-20T15:15:59.914924", + "azimuthAnxTime": "2026.2205996587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180920T151545_20180920T151612_012800_017A17_576E/IW3/VV/5.xml", + ], + "temporalBaseline": 36, + "perpendicularBaseline": 27, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709405016-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20180920T151559_VV_576E-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:01.180Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-09-20T15:16:01.059926Z", + "EndingDateTime": "2018-09-20T15:16:04.182316Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12800 }], + "GranuleUR": "S1_372326_IW3_20180920T151559_VV_576E-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-09-20T14:42:13.689001Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2205996587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-09-20T15:15:59.914924"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["27492063"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_012800_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419221.461201,-3214398.96661,5811147.96298,2018-09-20T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365787.05299,-3179438.031315,5852141.071737,2018-09-20T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.536143,-3474.262546,-4132.173817,2018-09-20T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.235014,-3517.86437,-4066.37117,2018-09-20T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:00Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:00Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180920T151545_20180920T151612_012800_017A17_576E/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20180920T151545_20180920T151612_012800_017A17_576E/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20180920T151545_20180920T151612_012800_017A17_576E-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365787.05299, -3179438.031315, 5852141.071737], + "prePositionTime": "2018-09-20T15:15:58.000000Z", + "postPosition": + [-2419221.461201, -3214398.96661, 5811147.96298], + "postPositionTime": "2018-09-20T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.235014, -3517.86437, -4066.37117], + "preVelocityTime": "2018-09-20T15:15:58.000000", + "postVelocity": [-5332.536143, -3474.262546, -4132.173817], + "postVelocityTime": "2018-09-20T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-09-20T14:42:13.689001Z", + "relative_start_time": 2027.370924949646, + "relative_center_time": 2028.932119846344, + "relative_end_time": 2030.4933149814606, + "relative_sv_pre_time": 2024.310998916626, + "relative_sv_post_time": 2034.310998916626, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181002T151600_VV_E719-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_012975_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 12975, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181002T151600_VV_E719-BURST", + "sensor": "C-SAR", + "startTime": "2018-10-02T15:16:01.399343Z", + "stopTime": "2018-10-02T15:16:04.521733Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181002T151545_20181002T151612_012975_017F72_E719/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181002T151600_VV_E719-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 27867951, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-10-02T15:16:00.248189", + "azimuthAnxTime": "2026.2218829898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181002T151545_20181002T151612_012975_017F72_E719/IW3/VV/5.xml", + ], + "temporalBaseline": 48, + "perpendicularBaseline": 9, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709392509-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181002T151600_VV_E719-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:04.141Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-10-02T15:16:01.399343Z", + "EndingDateTime": "2018-10-02T15:16:04.521733Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 12975 }], + "GranuleUR": "S1_372326_IW3_20181002T151600_VV_E719-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-10-02T14:42:14.020849Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2218829898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-10-02T15:16:00.248189"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["27867951"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_012975_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419181.268078,-3214428.346391,5811177.771933,2018-10-02T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365746.129634,-3179468.296839,5852170.368655,2018-10-02T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.609474,-3474.173916,-4132.122435,2018-10-02T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.307733,-3517.775815,-4066.320128,2018-10-02T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181002T151545_20181002T151612_012975_017F72_E719/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181002T151545_20181002T151612_012975_017F72_E719/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181002T151545_20181002T151612_012975_017F72_E719-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365746.129634, -3179468.296839, 5852170.368655], + "prePositionTime": "2018-10-02T15:15:58.000000Z", + "postPosition": + [-2419181.268078, -3214428.346391, 5811177.771933], + "postPositionTime": "2018-10-02T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.307733, -3517.775815, -4066.320128], + "preVelocityTime": "2018-10-02T15:15:58.000000", + "postVelocity": [-5332.609474, -3474.173916, -4132.122435], + "postVelocityTime": "2018-10-02T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-10-02T14:42:14.020849Z", + "relative_start_time": 2027.3784940242767, + "relative_center_time": 2028.9396889209747, + "relative_end_time": 2030.5008840560913, + "relative_sv_pre_time": 2023.9791510105133, + "relative_sv_post_time": 2033.9791510105133, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181014T151600_VV_27C0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_013150_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13150, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181014T151600_VV_27C0-BURST", + "sensor": "C-SAR", + "startTime": "2018-10-14T15:16:01.648763Z", + "stopTime": "2018-10-14T15:16:04.771153Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181014T151545_20181014T151612_013150_0184C6_27C0/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181014T151600_VV_27C0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 28243838, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2018-10-14T15:16:00.503760", + "azimuthAnxTime": "2026.233777215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181014T151545_20181014T151612_013150_0184C6_27C0/IW3/VV/5.xml", + ], + "temporalBaseline": 60, + "perpendicularBaseline": 51, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709399128-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181014T151600_VV_27C0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:47.015Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-10-14T15:16:01.648763Z", + "EndingDateTime": "2018-10-14T15:16:04.771153Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13150 }], + "GranuleUR": "S1_372326_IW3_20181014T151600_VV_27C0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-10-14T14:42:14.264757Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.233777215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-10-14T15:16:00.503760"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["28243838"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_013150_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419159.997655,-3214365.248753,5811235.010439,2018-10-14T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365724.790518,-3179404.902164,5852226.961243,2018-10-14T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.616537,-3474.204051,-4132.058002,2018-10-14T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.314385,-3517.805088,-4066.255368,2018-10-14T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:46Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:46Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181014T151545_20181014T151612_013150_0184C6_27C0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181014T151545_20181014T151612_013150_0184C6_27C0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181014T151545_20181014T151612_013150_0184C6_27C0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365724.790518, -3179404.902164, 5852226.961243], + "prePositionTime": "2018-10-14T15:15:58.000000Z", + "postPosition": + [-2419159.997655, -3214365.248753, 5811235.010439], + "postPositionTime": "2018-10-14T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.314385, -3517.805088, -4066.255368], + "preVelocityTime": "2018-10-14T15:15:58.000000", + "postVelocity": [-5332.616537, -3474.204051, -4132.058002], + "postVelocityTime": "2018-10-14T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-10-14T14:42:14.264757Z", + "relative_start_time": 2027.384006023407, + "relative_center_time": 2028.9452011585236, + "relative_end_time": 2030.5063960552216, + "relative_sv_pre_time": 2023.7352430820465, + "relative_sv_post_time": 2033.7352430820465, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181026T151600_VV_A9F7-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_013325_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13325, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181026T151600_VV_A9F7-BURST", + "sensor": "C-SAR", + "startTime": "2018-10-26T15:16:01.722112Z", + "stopTime": "2018-10-26T15:16:04.844502Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181026T151545_20181026T151612_013325_018A34_A9F7/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181026T151600_VV_A9F7-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 28619725, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-10-26T15:16:00.579164", + "azimuthAnxTime": "2026.2443131024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181026T151545_20181026T151612_013325_018A34_A9F7/IW3/VV/5.xml", + ], + "temporalBaseline": 72, + "perpendicularBaseline": 143, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709376751-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181026T151600_VV_A9F7-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:35.300Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-10-26T15:16:01.722112Z", + "EndingDateTime": "2018-10-26T15:16:04.844502Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13325 }], + "GranuleUR": "S1_372326_IW3_20181026T151600_VV_A9F7-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-10-26T14:42:14.329040Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2443131024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-10-26T15:16:00.579164"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["28619725"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_013325_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419182.518116,-3214259.83599,5811299.867911,2018-10-26T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365747.97627,-3179298.495046,5852291.390381,2018-10-26T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.550014,-3474.30423,-4132.015346,2018-10-26T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.247827,-3517.903786,-4066.212354,2018-10-26T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:35Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:35Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181026T151545_20181026T151612_013325_018A34_A9F7/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181026T151545_20181026T151612_013325_018A34_A9F7/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181026T151545_20181026T151612_013325_018A34_A9F7-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365747.97627, -3179298.495046, 5852291.390381], + "prePositionTime": "2018-10-26T15:15:58.000000Z", + "postPosition": + [-2419182.518116, -3214259.83599, 5811299.867911], + "postPositionTime": "2018-10-26T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.247827, -3517.903786, -4066.212354], + "preVelocityTime": "2018-10-26T15:15:58.000000", + "postVelocity": [-5332.550014, -3474.30423, -4132.015346], + "postVelocityTime": "2018-10-26T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-10-26T14:42:14.329040Z", + "relative_start_time": 2027.3930718898773, + "relative_center_time": 2028.954267024994, + "relative_end_time": 2030.515461921692, + "relative_sv_pre_time": 2023.6709599494934, + "relative_sv_post_time": 2033.6709599494934, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181107T151600_VV_3DBA-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_013500_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13500, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181107T151600_VV_3DBA-BURST", + "sensor": "C-SAR", + "startTime": "2018-11-07T15:16:01.348729Z", + "stopTime": "2018-11-07T15:16:04.471119Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181107T151545_20181107T151612_013500_018FB4_3DBA/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181107T151600_VV_3DBA-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 28995613, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-11-07T15:16:00.207837", + "azimuthAnxTime": "2026.2547851024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181107T151545_20181107T151612_013500_018FB4_3DBA/IW3/VV/5.xml", + ], + "temporalBaseline": 84, + "perpendicularBaseline": 124, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709400756-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181107T151600_VV_3DBA-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:30.129Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-11-07T15:16:01.348729Z", + "EndingDateTime": "2018-11-07T15:16:04.471119Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13500 }], + "GranuleUR": "S1_372326_IW3_20181107T151600_VV_3DBA-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-11-07T14:42:13.947108Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2547851024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-11-07T15:16:00.207837"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["28995613"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_013500_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419082.08222,-3214236.640999,5811369.503612,2018-11-07T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365648.375537,-3179273.573733,5852360.291316,2018-11-07T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.467254,-3474.477161,-4131.94209,2018-11-07T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.163556,-3518.076131,-4066.138669,2018-11-07T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:29Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:29Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181107T151545_20181107T151612_013500_018FB4_3DBA/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181107T151545_20181107T151612_013500_018FB4_3DBA/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181107T151545_20181107T151612_013500_018FB4_3DBA-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365648.375537, -3179273.573733, 5852360.291316], + "prePositionTime": "2018-11-07T15:15:58.000000Z", + "postPosition": + [-2419082.08222, -3214236.640999, 5811369.503612], + "postPositionTime": "2018-11-07T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.163556, -3518.076131, -4066.138669], + "preVelocityTime": "2018-11-07T15:15:58.000000", + "postVelocity": [-5332.467254, -3474.477161, -4131.94209], + "postVelocityTime": "2018-11-07T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-11-07T14:42:13.947108Z", + "relative_start_time": 2027.4016208648682, + "relative_center_time": 2028.9628159999847, + "relative_end_time": 2030.5240108966827, + "relative_sv_pre_time": 2024.0528919696808, + "relative_sv_post_time": 2034.0528919696808, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181119T151600_VV_1AF4-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_013675_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13675, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181119T151600_VV_1AF4-BURST", + "sensor": "C-SAR", + "startTime": "2018-11-19T15:16:01.303243Z", + "stopTime": "2018-11-19T15:16:04.425633Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181119T151545_20181119T151612_013675_019537_1AF4/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181119T151600_VV_1AF4-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 29371500, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-11-19T15:16:00.158239", + "azimuthAnxTime": "2026.2515876587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181119T151545_20181119T151612_013675_019537_1AF4/IW3/VV/5.xml", + ], + "temporalBaseline": 96, + "perpendicularBaseline": 82, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709378773-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181119T151600_VV_1AF4-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:23:52.005Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-11-19T15:16:01.303243Z", + "EndingDateTime": "2018-11-19T15:16:04.425633Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13675 }], + "GranuleUR": "S1_372326_IW3_20181119T151600_VV_1AF4-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-11-19T14:42:13.901518Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2515876587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-11-19T15:16:00.158239"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["29371500"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_013675_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419065.795278,-3214289.186731,5811350.112751,2018-11-19T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365631.043566,-3179327.516233,5852340.879796,2018-11-19T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.571777,-3474.337139,-4131.939894,2018-11-19T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.268069,-3517.936814,-4066.136753,2018-11-19T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:23:51Z" }, + { "Type": "Update", "Date": "2023-06-16T01:23:51Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181119T151545_20181119T151612_013675_019537_1AF4/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181119T151545_20181119T151612_013675_019537_1AF4/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181119T151545_20181119T151612_013675_019537_1AF4-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365631.043566, -3179327.516233, 5852340.879796], + "prePositionTime": "2018-11-19T15:15:58.000000Z", + "postPosition": + [-2419065.795278, -3214289.186731, 5811350.112751], + "postPositionTime": "2018-11-19T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.268069, -3517.936814, -4066.136753], + "preVelocityTime": "2018-11-19T15:15:58.000000", + "postVelocity": [-5332.571777, -3474.337139, -4131.939894], + "postVelocityTime": "2018-11-19T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-11-19T14:42:13.901518Z", + "relative_start_time": 2027.4017248153687, + "relative_center_time": 2028.9629199504852, + "relative_end_time": 2030.5241148471832, + "relative_sv_pre_time": 2024.0984818935394, + "relative_sv_post_time": 2034.0984818935394, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181201T151559_VV_CAC0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_013850_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 13850, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181201T151559_VV_CAC0-BURST", + "sensor": "C-SAR", + "startTime": "2018-12-01T15:16:00.851949Z", + "stopTime": "2018-12-01T15:16:03.974339Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181201T151544_20181201T151611_013850_019AD1_CAC0/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181201T151559_VV_CAC0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 29747387, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-12-01T15:15:59.706960", + "azimuthAnxTime": "2026.2553715461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181201T151544_20181201T151611_013850_019AD1_CAC0/IW3/VV/5.xml", + ], + "temporalBaseline": 108, + "perpendicularBaseline": 47, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709380011-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181201T151559_VV_CAC0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:23:50.021Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-12-01T15:16:00.851949Z", + "EndingDateTime": "2018-12-01T15:16:03.974339Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 13850 }], + "GranuleUR": "S1_372326_IW3_20181201T151559_VV_CAC0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-12-01T14:42:13.446490Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2553715461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-12-01T15:15:59.706960"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["29747387"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_013850_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419028.018746,-3214318.251307,5811354.519573,2018-12-01T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365593.191548,-3179356.595246,5852345.19778,2018-12-01T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.579569,-3474.335552,-4131.930981,2018-12-01T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.275389,-3517.935502,-4066.127899,2018-12-01T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:23:49Z" }, + { "Type": "Update", "Date": "2023-06-16T01:23:49Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181201T151544_20181201T151611_013850_019AD1_CAC0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181201T151544_20181201T151611_013850_019AD1_CAC0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181201T151544_20181201T151611_013850_019AD1_CAC0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365593.191548, -3179356.595246, 5852345.19778], + "prePositionTime": "2018-12-01T15:15:58.000000Z", + "postPosition": + [-2419028.018746, -3214318.251307, 5811354.519573], + "postPositionTime": "2018-12-01T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.275389, -3517.935502, -4066.127899], + "preVelocityTime": "2018-12-01T15:15:58.000000", + "postVelocity": [-5332.579569, -3474.335552, -4131.930981], + "postVelocityTime": "2018-12-01T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2018-12-01T14:42:13.446490Z", + "relative_start_time": 2027.4054589271545, + "relative_center_time": 2028.9666540622711, + "relative_end_time": 2030.5278489589691, + "relative_sv_pre_time": 2024.5535099506378, + "relative_sv_post_time": 2034.5535099506378, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181213T151559_VV_4179-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_014025_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14025, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181213T151559_VV_4179-BURST", + "sensor": "C-SAR", + "startTime": "2018-12-13T15:16:00.270696Z", + "stopTime": "2018-12-13T15:16:03.393086Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181213T151544_20181213T151611_014025_01A07E_4179/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181213T151559_VV_4179-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 30123275, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-12-13T15:15:59.123635", + "azimuthAnxTime": "2026.2540971024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181213T151544_20181213T151611_014025_01A07E_4179/IW3/VV/5.xml", + ], + "temporalBaseline": 120, + "perpendicularBaseline": 14, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709394595-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181213T151559_VV_4179-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:22:50.982Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-12-13T15:16:00.270696Z", + "EndingDateTime": "2018-12-13T15:16:03.393086Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14025 }], + "GranuleUR": "S1_372326_IW3_20181213T151559_VV_4179-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-12-13T14:42:12.866759Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2540971024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-12-13T15:15:59.123635"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["30123275"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_014025_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2418988.56518,-3214350.781943,5811358.968535,2018-12-13T15:16:07.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365553.869332,-3179388.858412,5852349.533541,2018-12-13T15:15:57.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.566706,-3474.362147,-4131.919608,2018-12-13T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.261984,-3517.962374,-4066.116618,2018-12-13T15:15:57.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:22:50Z" }, + { "Type": "Update", "Date": "2023-06-16T01:22:50Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181213T151544_20181213T151611_014025_01A07E_4179/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181213T151544_20181213T151611_014025_01A07E_4179/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181213T151544_20181213T151611_014025_01A07E_4179-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365553.869332, -3179388.858412, 5852349.533541], + "prePositionTime": "2018-12-13T15:15:57.000000Z", + "postPosition": + [-2418988.56518, -3214350.781943, 5811358.968535], + "postPositionTime": "2018-12-13T15:16:07.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.261984, -3517.962374, -4066.116618], + "preVelocityTime": "2018-12-13T15:15:57.000000", + "postVelocity": [-5332.566706, -3474.362147, -4131.919608], + "postVelocityTime": "2018-12-13T15:16:07.000000", + }, + }, + "ascendingNodeTime": "2018-12-13T14:42:12.866759Z", + "relative_start_time": 2027.4039368629456, + "relative_center_time": 2028.9651319980621, + "relative_end_time": 2030.5263268947601, + "relative_sv_pre_time": 2024.1332409381866, + "relative_sv_post_time": 2034.1332409381866, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20181225T151558_VV_B17F-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_014200_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14200, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20181225T151558_VV_B17F-BURST", + "sensor": "C-SAR", + "startTime": "2018-12-25T15:16:00.074849Z", + "stopTime": "2018-12-25T15:16:03.197239Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181225T151544_20181225T151611_014200_01A64E_B17F/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20181225T151558_VV_B17F-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 30499162, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2018-12-25T15:15:58.921622", + "azimuthAnxTime": "2026.2501015461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181225T151544_20181225T151611_014200_01A64E_B17F/IW3/VV/5.xml", + ], + "temporalBaseline": 132, + "perpendicularBaseline": 139, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709392785-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20181225T151558_VV_B17F-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:22:20.385Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2018-12-25T15:16:00.074849Z", + "EndingDateTime": "2018-12-25T15:16:03.197239Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14200 }], + "GranuleUR": "S1_372326_IW3_20181225T151558_VV_B17F-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2018-12-25T14:42:12.666487Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2501015461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2018-12-25T15:15:58.921622"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["30499162"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_014200_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419076.035488,-3214219.168592,5811395.338087,2018-12-25T15:16:07.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365641.024207,-3179257.637764,5852385.660921,2018-12-25T15:15:57.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.597727,-3474.323572,-4131.895583,2018-12-25T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.294038,-3517.922378,-4066.092188,2018-12-25T15:15:57.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:22:20Z" }, + { "Type": "Update", "Date": "2023-06-16T01:22:20Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181225T151544_20181225T151611_014200_01A64E_B17F/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20181225T151544_20181225T151611_014200_01A64E_B17F/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20181225T151544_20181225T151611_014200_01A64E_B17F-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365641.024207, -3179257.637764, 5852385.660921], + "prePositionTime": "2018-12-25T15:15:57.000000Z", + "postPosition": + [-2419076.035488, -3214219.168592, 5811395.338087], + "postPositionTime": "2018-12-25T15:16:07.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.294038, -3517.922378, -4066.092188], + "preVelocityTime": "2018-12-25T15:15:57.000000", + "postVelocity": [-5332.597727, -3474.323572, -4131.895583], + "postVelocityTime": "2018-12-25T15:16:07.000000", + }, + }, + "ascendingNodeTime": "2018-12-25T14:42:12.666487Z", + "relative_start_time": 2027.4083619117737, + "relative_center_time": 2028.9695570468903, + "relative_end_time": 2030.5307519435883, + "relative_sv_pre_time": 2024.3335130214691, + "relative_sv_post_time": 2034.3335130214691, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190106T151558_VV_61AF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_014375_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14375, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190106T151558_VV_61AF-BURST", + "sensor": "C-SAR", + "startTime": "2019-01-06T15:15:59.561605Z", + "stopTime": "2019-01-06T15:16:02.683995Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190106T151543_20190106T151610_014375_01AC08_61AF/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190106T151558_VV_61AF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 30875050, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2019-01-06T15:15:58.420711", + "azimuthAnxTime": "2026.2611967713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190106T151543_20190106T151610_014375_01AC08_61AF/IW3/VV/5.xml", + ], + "temporalBaseline": 144, + "perpendicularBaseline": 159, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709384295-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190106T151558_VV_61AF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:32.637Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-01-06T15:15:59.561605Z", + "EndingDateTime": "2019-01-06T15:16:02.683995Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14375 }], + "GranuleUR": "S1_372326_IW3_20190106T151558_VV_61AF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-01-06T14:42:12.154257Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2611967713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-01-06T15:15:58.420711"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["30875050"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_014375_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419092.399761,-3214203.498841,5811396.398528,2019-01-06T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365658.044028,-3179241.232074,5852386.875136,2019-01-06T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.532116,-3474.397306,-4131.910977,2019-01-06T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.228521,-3517.995847,-4066.10755,2019-01-06T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:32Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:32Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190106T151543_20190106T151610_014375_01AC08_61AF/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190106T151543_20190106T151610_014375_01AC08_61AF/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190106T151543_20190106T151610_014375_01AC08_61AF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365658.044028, -3179241.232074, 5852386.875136], + "prePositionTime": "2019-01-06T15:15:56.000000Z", + "postPosition": + [-2419092.399761, -3214203.498841, 5811396.398528], + "postPositionTime": "2019-01-06T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.228521, -3517.995847, -4066.10755], + "preVelocityTime": "2019-01-06T15:15:56.000000", + "postVelocity": [-5332.532116, -3474.397306, -4131.910977], + "postVelocityTime": "2019-01-06T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2019-01-06T14:42:12.154257Z", + "relative_start_time": 2027.4073479175568, + "relative_center_time": 2028.9685428142548, + "relative_end_time": 2030.5297379493713, + "relative_sv_pre_time": 2023.8457429409027, + "relative_sv_post_time": 2033.8457429409027, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190118T151558_VV_BA13-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_014550_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14550, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190118T151558_VV_BA13-BURST", + "sensor": "C-SAR", + "startTime": "2019-01-18T15:15:59.160100Z", + "stopTime": "2019-01-18T15:16:02.282490Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190118T151543_20190118T151610_014550_01B1AD_BA13/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190118T151558_VV_BA13-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 31250937, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-01-18T15:15:58.013040", + "azimuthAnxTime": "2026.2521299898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190118T151543_20190118T151610_014550_01B1AD_BA13/IW3/VV/5.xml", + ], + "temporalBaseline": 156, + "perpendicularBaseline": 78, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709400008-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190118T151558_VV_BA13-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:22:40.656Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-01-18T15:15:59.160100Z", + "EndingDateTime": "2019-01-18T15:16:02.282490Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14550 }], + "GranuleUR": "S1_372326_IW3_20190118T151558_VV_BA13-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-01-18T14:42:11.755944Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2521299898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-01-18T15:15:58.013040"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["31250937"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_014550_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419024.986858,-3214271.393221,5811378.92302,2019-01-18T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365590.655661,-3179308.870156,5852369.414915,2019-01-18T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.530009,-3474.422521,-4131.912503,2019-01-18T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.225702,-3518.021913,-4066.109084,2019-01-18T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:22:40Z" }, + { "Type": "Update", "Date": "2023-06-16T01:22:40Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190118T151543_20190118T151610_014550_01B1AD_BA13/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190118T151543_20190118T151610_014550_01B1AD_BA13/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190118T151543_20190118T151610_014550_01B1AD_BA13-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365590.655661, -3179308.870156, 5852369.414915], + "prePositionTime": "2019-01-18T15:15:56.000000Z", + "postPosition": + [-2419024.986858, -3214271.393221, 5811378.92302], + "postPositionTime": "2019-01-18T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.225702, -3518.021913, -4066.109084], + "preVelocityTime": "2019-01-18T15:15:56.000000", + "postVelocity": [-5332.530009, -3474.422521, -4131.912503], + "postVelocityTime": "2019-01-18T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2019-01-18T14:42:11.755944Z", + "relative_start_time": 2027.4041559696198, + "relative_center_time": 2028.9653508663177, + "relative_end_time": 2030.5265460014343, + "relative_sv_pre_time": 2024.2440559864044, + "relative_sv_post_time": 2034.2440559864044, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190130T151557_VV_B713-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_014725_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14725, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190130T151557_VV_B713-BURST", + "sensor": "C-SAR", + "startTime": "2019-01-30T15:15:58.876287Z", + "stopTime": "2019-01-30T15:16:01.998677Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190130T151542_20190130T151609_014725_01B74C_B713/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190130T151557_VV_B713-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 31626824, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-01-30T15:15:57.735409", + "azimuthAnxTime": "2026.2538207713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190130T151542_20190130T151609_014725_01B74C_B713/IW3/VV/5.xml", + ], + "temporalBaseline": 168, + "perpendicularBaseline": 90, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709403077-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190130T151557_VV_B713-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:12.080Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-01-30T15:15:58.876287Z", + "EndingDateTime": "2019-01-30T15:16:01.998677Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14725 }], + "GranuleUR": "S1_372326_IW3_20190130T151557_VV_B713-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-01-30T14:42:11.476508Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2538207713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-01-30T15:15:57.735409"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["31626824"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_014725_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419080.237972,-3214276.92893,5811343.745671,2019-01-30T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365645.586688,-3179315.164638,5852334.648662,2019-01-30T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.561621,-3474.346534,-4131.953527,2019-01-30T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.258125,-3517.946154,-4066.15029,2019-01-30T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:11Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:11Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190130T151542_20190130T151609_014725_01B74C_B713/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190130T151542_20190130T151609_014725_01B74C_B713/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190130T151542_20190130T151609_014725_01B74C_B713-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365645.586688, -3179315.164638, 5852334.648662], + "prePositionTime": "2019-01-30T15:15:56.000000Z", + "postPosition": + [-2419080.237972, -3214276.92893, 5811343.745671], + "postPositionTime": "2019-01-30T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.258125, -3517.946154, -4066.15029], + "preVelocityTime": "2019-01-30T15:15:56.000000", + "postVelocity": [-5332.561621, -3474.346534, -4131.953527], + "postVelocityTime": "2019-01-30T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2019-01-30T14:42:11.476508Z", + "relative_start_time": 2027.3997790813446, + "relative_center_time": 2028.9609739780426, + "relative_end_time": 2030.5221691131592, + "relative_sv_pre_time": 2024.5234920978546, + "relative_sv_post_time": 2034.5234920978546, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190211T151557_VV_ECCE-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_014900_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 14900, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190211T151557_VV_ECCE-BURST", + "sensor": "C-SAR", + "startTime": "2019-02-11T15:15:58.405523Z", + "stopTime": "2019-02-11T15:16:01.527913Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190211T151542_20190211T151609_014900_01BD09_ECCE/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190211T151557_VV_ECCE-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 32002712, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-02-11T15:15:57.264630", + "azimuthAnxTime": "2026.2509496587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190211T151542_20190211T151609_014900_01BD09_ECCE/IW3/VV/5.xml", + ], + "temporalBaseline": 180, + "perpendicularBaseline": 10, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709404103-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190211T151557_VV_ECCE-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:22:26.948Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-02-11T15:15:58.405523Z", + "EndingDateTime": "2019-02-11T15:16:01.527913Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 14900 }], + "GranuleUR": "S1_372326_IW3_20190211T151557_VV_ECCE-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-02-11T14:42:11.008802Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2509496587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-02-11T15:15:57.264630"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["32002712"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_014900_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419019.498912,-3214350.304731,5811317.780633,2019-02-11T15:16:05.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365584.575063,-3179388.697323,5852308.748977,2019-02-11T15:15:55.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.589175,-3474.330345,-4131.960045,2019-02-11T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.285116,-3517.930964,-4066.156854,2019-02-11T15:15:55.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:22:26Z" }, + { "Type": "Update", "Date": "2023-06-16T01:22:26Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190211T151542_20190211T151609_014900_01BD09_ECCE/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190211T151542_20190211T151609_014900_01BD09_ECCE/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190211T151542_20190211T151609_014900_01BD09_ECCE-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365584.575063, -3179388.697323, 5852308.748977], + "prePositionTime": "2019-02-11T15:15:55.000000Z", + "postPosition": + [-2419019.498912, -3214350.304731, 5811317.780633], + "postPositionTime": "2019-02-11T15:16:05.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.285116, -3517.930964, -4066.156854], + "preVelocityTime": "2019-02-11T15:15:55.000000", + "postVelocity": [-5332.589175, -3474.330345, -4131.960045], + "postVelocityTime": "2019-02-11T15:16:05.000000", + }, + }, + "ascendingNodeTime": "2019-02-11T14:42:11.008802Z", + "relative_start_time": 2027.396721124649, + "relative_center_time": 2028.9579162597656, + "relative_end_time": 2030.5191111564636, + "relative_sv_pre_time": 2023.9911980628967, + "relative_sv_post_time": 2033.9911980628967, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190223T151557_VV_607D-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_015075_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15075, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190223T151557_VV_607D-BURST", + "sensor": "C-SAR", + "startTime": "2019-02-23T15:15:58.379598Z", + "stopTime": "2019-02-23T15:16:01.501988Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190223T151542_20190223T151609_015075_01C2C4_607D/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190223T151557_VV_607D-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 32378599, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2019-02-23T15:15:57.232554", + "azimuthAnxTime": "2026.2402961024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190223T151542_20190223T151609_015075_01C2C4_607D/IW3/VV/5.xml", + ], + "temporalBaseline": 192, + "perpendicularBaseline": 85, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709399210-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190223T151557_VV_607D-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:16.644Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-02-23T15:15:58.379598Z", + "EndingDateTime": "2019-02-23T15:16:01.501988Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15075 }], + "GranuleUR": "S1_372326_IW3_20190223T151557_VV_607D-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-02-23T14:42:10.987159Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2402961024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-02-23T15:15:57.232554"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["32378599"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_015075_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419135.222151,-3214296.941691,5811282.558037,2019-02-23T15:16:05.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365700.126586,-3179336.055778,5852274.125917,2019-02-23T15:15:55.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.605572,-3474.258372,-4132.019992,2019-02-23T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.303071,-3517.858633,-4066.216813,2019-02-23T15:15:55.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:16Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:16Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190223T151542_20190223T151609_015075_01C2C4_607D/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190223T151542_20190223T151609_015075_01C2C4_607D/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190223T151542_20190223T151609_015075_01C2C4_607D-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365700.126586, -3179336.055778, 5852274.125917], + "prePositionTime": "2019-02-23T15:15:55.000000Z", + "postPosition": + [-2419135.222151, -3214296.941691, 5811282.558037], + "postPositionTime": "2019-02-23T15:16:05.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.303071, -3517.858633, -4066.216813], + "preVelocityTime": "2019-02-23T15:15:55.000000", + "postVelocity": [-5332.605572, -3474.258372, -4132.019992], + "postVelocityTime": "2019-02-23T15:16:05.000000", + }, + }, + "ascendingNodeTime": "2019-02-23T14:42:10.987159Z", + "relative_start_time": 2027.3924388885498, + "relative_center_time": 2028.9536340236664, + "relative_end_time": 2030.5148289203644, + "relative_sv_pre_time": 2024.0128409862518, + "relative_sv_post_time": 2034.0128409862518, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190307T151557_VV_2E95-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_015250_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15250, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190307T151557_VV_2E95-BURST", + "sensor": "C-SAR", + "startTime": "2019-03-07T15:15:58.192708Z", + "stopTime": "2019-03-07T15:16:01.315098Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190307T151542_20190307T151609_015250_01C88E_2E95/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190307T151557_VV_2E95-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 32754486, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-03-07T15:15:57.053873", + "azimuthAnxTime": "2026.2452836587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190307T151542_20190307T151609_015250_01C88E_2E95/IW3/VV/5.xml", + ], + "temporalBaseline": 204, + "perpendicularBaseline": 120, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709372262-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190307T151557_VV_2E95-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:18.073Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-03-07T15:15:58.192708Z", + "EndingDateTime": "2019-03-07T15:16:01.315098Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15250 }], + "GranuleUR": "S1_372326_IW3_20190307T151557_VV_2E95-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-03-07T14:42:10.805765Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2452836587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-03-07T15:15:57.053873"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["32754486"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_015250_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419188.314249,-3214261.480228,5811261.78079,2019-03-07T15:16:05.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365753.835214,-3179299.991238,5852253.81804,2019-03-07T15:15:55.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.543573,-3474.318796,-4132.067013,2019-03-07T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.241759,-3517.918797,-4066.263648,2019-03-07T15:15:55.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:17Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:17Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190307T151542_20190307T151609_015250_01C88E_2E95/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190307T151542_20190307T151609_015250_01C88E_2E95/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190307T151542_20190307T151609_015250_01C88E_2E95-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365753.835214, -3179299.991238, 5852253.81804], + "prePositionTime": "2019-03-07T15:15:55.000000Z", + "postPosition": + [-2419188.314249, -3214261.480228, 5811261.78079], + "postPositionTime": "2019-03-07T15:16:05.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.241759, -3517.918797, -4066.263648], + "preVelocityTime": "2019-03-07T15:15:55.000000", + "postVelocity": [-5332.543573, -3474.318796, -4132.067013], + "postVelocityTime": "2019-03-07T15:16:05.000000", + }, + }, + "ascendingNodeTime": "2019-03-07T14:42:10.805765Z", + "relative_start_time": 2027.386943101883, + "relative_center_time": 2028.948137998581, + "relative_end_time": 2030.5093331336975, + "relative_sv_pre_time": 2024.194235086441, + "relative_sv_post_time": 2034.194235086441, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190319T151557_VV_C3A2-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_015425_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15425, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190319T151557_VV_C3A2-BURST", + "sensor": "C-SAR", + "startTime": "2019-03-19T15:15:58.174596Z", + "stopTime": "2019-03-19T15:16:01.296986Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190319T151542_20190319T151609_015425_01CE39_C3A2/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190319T151557_VV_C3A2-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 33130374, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-03-19T15:15:57.025483", + "azimuthAnxTime": "2026.2265306587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190319T151542_20190319T151609_015425_01CE39_C3A2/IW3/VV/5.xml", + ], + "temporalBaseline": 216, + "perpendicularBaseline": 69, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709394895-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190319T151557_VV_C3A2-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:40.741Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-03-19T15:15:58.174596Z", + "EndingDateTime": "2019-03-19T15:16:01.296986Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15425 }], + "GranuleUR": "S1_372326_IW3_20190319T151557_VV_C3A2-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-03-19T14:42:10.793569Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2265306587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-03-19T15:15:57.025483"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["33130374"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_015425_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419166.342637,-3214297.647466,5811222.401335,2019-03-19T15:16:05.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365732.284138,-3179335.487414,5852214.838388,2019-03-19T15:15:55.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.501551,-3474.385549,-4132.107102,2019-03-19T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.199667,-3517.986246,-4066.303519,2019-03-19T15:15:55.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:40Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:40Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190319T151542_20190319T151609_015425_01CE39_C3A2/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190319T151542_20190319T151609_015425_01CE39_C3A2/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190319T151542_20190319T151609_015425_01CE39_C3A2-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365732.284138, -3179335.487414, 5852214.838388], + "prePositionTime": "2019-03-19T15:15:55.000000Z", + "postPosition": + [-2419166.342637, -3214297.647466, 5811222.401335], + "postPositionTime": "2019-03-19T15:16:05.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.199667, -3517.986246, -4066.303519], + "preVelocityTime": "2019-03-19T15:15:55.000000", + "postVelocity": [-5332.501551, -3474.385549, -4132.107102], + "postVelocityTime": "2019-03-19T15:16:05.000000", + }, + }, + "ascendingNodeTime": "2019-03-19T14:42:10.793569Z", + "relative_start_time": 2027.381026983261, + "relative_center_time": 2028.9422221183777, + "relative_end_time": 2030.5034170150757, + "relative_sv_pre_time": 2024.2064309120178, + "relative_sv_post_time": 2034.2064309120178, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190331T151557_VV_D2CB-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_015600_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15600, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190331T151557_VV_D2CB-BURST", + "sensor": "C-SAR", + "startTime": "2019-03-31T15:15:58.666280Z", + "stopTime": "2019-03-31T15:16:01.788670Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190331T151542_20190331T151609_015600_01D3EE_D2CB/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190331T151557_VV_D2CB-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 33506261, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-03-31T15:15:57.517167", + "azimuthAnxTime": "2026.2247385461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190331T151542_20190331T151609_015600_01D3EE_D2CB/IW3/VV/5.xml", + ], + "temporalBaseline": 228, + "perpendicularBaseline": 47, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709395434-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190331T151557_VV_D2CB-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:19:12.885Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-03-31T15:15:58.666280Z", + "EndingDateTime": "2019-03-31T15:16:01.788670Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15600 }], + "GranuleUR": "S1_372326_IW3_20190331T151557_VV_D2CB-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-03-31T14:42:11.287070Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2247385461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-03-31T15:15:57.517167"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["33506261"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_015600_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419190.126361,-3214339.989199,5811181.367746,2019-03-31T15:16:05.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365755.374072,-3179379.00521,5852174.167494,2019-03-31T15:15:55.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.570664,-3474.267614,-4132.143226,2019-03-31T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.269286,-3517.868989,-4066.339924,2019-03-31T15:15:55.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:19:12Z" }, + { "Type": "Update", "Date": "2023-06-16T01:19:12Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190331T151542_20190331T151609_015600_01D3EE_D2CB/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190331T151542_20190331T151609_015600_01D3EE_D2CB/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190331T151542_20190331T151609_015600_01D3EE_D2CB-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365755.374072, -3179379.00521, 5852174.167494], + "prePositionTime": "2019-03-31T15:15:55.000000Z", + "postPosition": + [-2419190.126361, -3214339.989199, 5811181.367746], + "postPositionTime": "2019-03-31T15:16:05.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.269286, -3517.868989, -4066.339924], + "preVelocityTime": "2019-03-31T15:15:55.000000", + "postVelocity": [-5332.570664, -3474.267614, -4132.143226], + "postVelocityTime": "2019-03-31T15:16:05.000000", + }, + }, + "ascendingNodeTime": "2019-03-31T14:42:11.287070Z", + "relative_start_time": 2027.3792099952698, + "relative_center_time": 2028.9404051303864, + "relative_end_time": 2030.5016000270844, + "relative_sv_pre_time": 2023.7129299640656, + "relative_sv_post_time": 2033.7129299640656, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190412T151557_VV_2984-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_015775_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15775, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190412T151557_VV_2984-BURST", + "sensor": "C-SAR", + "startTime": "2019-04-12T15:15:58.955632Z", + "stopTime": "2019-04-12T15:16:02.078022Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190412T151543_20190412T151610_015775_01D9C0_2984/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190412T151557_VV_2984-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 33882149, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-04-12T15:15:57.808574", + "azimuthAnxTime": "2026.2101003276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190412T151543_20190412T151610_015775_01D9C0_2984/IW3/VV/5.xml", + ], + "temporalBaseline": 240, + "perpendicularBaseline": -6, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709392740-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190412T151557_VV_2984-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:43.291Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-04-12T15:15:58.955632Z", + "EndingDateTime": "2019-04-12T15:16:02.078022Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15775 }], + "GranuleUR": "S1_372326_IW3_20190412T151557_VV_2984-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-04-12T14:42:11.592623Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2101003276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-04-12T15:15:57.808574"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["33882149"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_015775_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419235.980177,-3214447.365111,5811106.482921,2019-04-12T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365801.369392,-3179486.940977,5852099.970512,2019-04-12T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.556228,-3474.211073,-4132.211563,2019-04-12T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.255415,-3517.813597,-4066.409169,2019-04-12T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:43Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:43Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190412T151543_20190412T151610_015775_01D9C0_2984/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190412T151543_20190412T151610_015775_01D9C0_2984/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190412T151543_20190412T151610_015775_01D9C0_2984-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365801.369392, -3179486.940977, 5852099.970512], + "prePositionTime": "2019-04-12T15:15:56.000000Z", + "postPosition": + [-2419235.980177, -3214447.365111, 5811106.482921], + "postPositionTime": "2019-04-12T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.255415, -3517.813597, -4066.409169], + "preVelocityTime": "2019-04-12T15:15:56.000000", + "postVelocity": [-5332.556228, -3474.211073, -4132.211563], + "postVelocityTime": "2019-04-12T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2019-04-12T14:42:11.592623Z", + "relative_start_time": 2027.3630089759827, + "relative_center_time": 2028.9242041110992, + "relative_end_time": 2030.4853990077972, + "relative_sv_pre_time": 2024.4073770046234, + "relative_sv_post_time": 2034.4073770046234, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190424T151558_VV_F94D-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_015950_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 15950, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190424T151558_VV_F94D-BURST", + "sensor": "C-SAR", + "startTime": "2019-04-24T15:15:59.566884Z", + "stopTime": "2019-04-24T15:16:02.689274Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190424T151543_20190424T151610_015950_01DF8E_F94D/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190424T151558_VV_F94D-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 34258036, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-04-24T15:15:58.421881", + "azimuthAnxTime": "2026.2165468839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190424T151543_20190424T151610_015950_01DF8E_F94D/IW3/VV/5.xml", + ], + "temporalBaseline": 252, + "perpendicularBaseline": 11, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709395492-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190424T151558_VV_F94D-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:24.995Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-04-24T15:15:59.566884Z", + "EndingDateTime": "2019-04-24T15:16:02.689274Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 15950 }], + "GranuleUR": "S1_372326_IW3_20190424T151558_VV_F94D-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-04-24T14:42:12.200150Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2165468839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-04-24T15:15:58.421881"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["34258036"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_015950_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419238.466779,-3214442.262466,5811123.956166,2019-04-24T15:16:06.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365803.437181,-3179482.429826,5852117.214684,2019-04-24T15:15:56.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.598133,-3474.152022,-4132.188576,2019-04-24T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.297286,-3517.754357,-4066.386352,2019-04-24T15:15:56.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:24Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:24Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190424T151543_20190424T151610_015950_01DF8E_F94D/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190424T151543_20190424T151610_015950_01DF8E_F94D/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190424T151543_20190424T151610_015950_01DF8E_F94D-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365803.437181, -3179482.429826, 5852117.214684], + "prePositionTime": "2019-04-24T15:15:56.000000Z", + "postPosition": + [-2419238.466779, -3214442.262466, 5811123.956166], + "postPositionTime": "2019-04-24T15:16:06.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.297286, -3517.754357, -4066.386352], + "preVelocityTime": "2019-04-24T15:15:56.000000", + "postVelocity": [-5332.598133, -3474.152022, -4132.188576], + "postVelocityTime": "2019-04-24T15:16:06.000000", + }, + }, + "ascendingNodeTime": "2019-04-24T14:42:12.200150Z", + "relative_start_time": 2027.3667340278625, + "relative_center_time": 2028.9279289245605, + "relative_end_time": 2030.4891240596771, + "relative_sv_pre_time": 2023.79984998703, + "relative_sv_post_time": 2033.79984998703, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190506T151558_VV_EB46-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_016125_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 16125, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190506T151558_VV_EB46-BURST", + "sensor": "C-SAR", + "startTime": "2019-05-06T15:15:59.967733Z", + "stopTime": "2019-05-06T15:16:03.090123Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190506T151544_20190506T151611_016125_01E56C_EB46/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190506T151558_VV_EB46-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 34633923, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-05-06T15:15:58.806285", + "azimuthAnxTime": "2026.2068825461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190506T151544_20190506T151611_016125_01E56C_EB46/IW3/VV/5.xml", + ], + "temporalBaseline": 264, + "perpendicularBaseline": 101, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709395184-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190506T151558_VV_EB46-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:11.210Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-05-06T15:15:59.967733Z", + "EndingDateTime": "2019-05-06T15:16:03.090123Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 16125 }], + "GranuleUR": "S1_372326_IW3_20190506T151558_VV_EB46-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-05-06T14:42:12.593974Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2068825461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-05-06T15:15:58.806285"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["34633923"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_016125_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419254.259462,-3214298.789158,5811179.112883,2019-05-06T15:16:07.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365819.993855,-3179337.458566,5852172.087389,2019-05-06T15:15:57.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.521686,-3474.30257,-4132.160687,2019-05-06T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.220969,-3517.903391,-4066.357451,2019-05-06T15:15:57.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:11Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:11Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190506T151544_20190506T151611_016125_01E56C_EB46/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190506T151544_20190506T151611_016125_01E56C_EB46/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190506T151544_20190506T151611_016125_01E56C_EB46-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365819.993855, -3179337.458566, 5852172.087389], + "prePositionTime": "2019-05-06T15:15:57.000000Z", + "postPosition": + [-2419254.259462, -3214298.789158, 5811179.112883], + "postPositionTime": "2019-05-06T15:16:07.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.220969, -3517.903391, -4066.357451], + "preVelocityTime": "2019-05-06T15:15:57.000000", + "postVelocity": [-5332.521686, -3474.30257, -4132.160687], + "postVelocityTime": "2019-05-06T15:16:07.000000", + }, + }, + "ascendingNodeTime": "2019-05-06T14:42:12.593974Z", + "relative_start_time": 2027.3737587928772, + "relative_center_time": 2028.9349536895752, + "relative_end_time": 2030.4961488246918, + "relative_sv_pre_time": 2024.4060258865356, + "relative_sv_post_time": 2034.4060258865356, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190518T151559_VV_51AA-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_016300_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 16300, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190518T151559_VV_51AA-BURST", + "sensor": "C-SAR", + "startTime": "2019-05-18T15:16:00.608693Z", + "stopTime": "2019-05-18T15:16:03.731083Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190518T151544_20190518T151611_016300_01EAD8_51AA/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190518T151559_VV_51AA-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 35009811, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-05-18T15:15:59.451355", + "azimuthAnxTime": "2026.208541215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190518T151544_20190518T151611_016300_01EAD8_51AA/IW3/VV/5.xml", + ], + "temporalBaseline": 276, + "perpendicularBaseline": 129, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709386474-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190518T151559_VV_51AA-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:20:32.614Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-05-18T15:16:00.608693Z", + "EndingDateTime": "2019-05-18T15:16:03.731083Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 16300 }], + "GranuleUR": "S1_372326_IW3_20190518T151559_VV_51AA-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-05-18T14:42:13.237082Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.208541215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-05-18T15:15:59.451355"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["35009811"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_016300_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419314.386939,-3214304.46082,5811155.711636,2019-05-18T15:16:07.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365880.352339,-3179343.34038,5852149.095484,2019-05-18T15:15:57.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.498265,-3474.281564,-4132.201442,2019-05-18T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.198212,-3517.882354,-4066.398574,2019-05-18T15:15:57.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:20:32Z" }, + { "Type": "Update", "Date": "2023-06-16T01:20:32Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190518T151544_20190518T151611_016300_01EAD8_51AA/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190518T151544_20190518T151611_016300_01EAD8_51AA/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190518T151544_20190518T151611_016300_01EAD8_51AA-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365880.352339, -3179343.34038, 5852149.095484], + "prePositionTime": "2019-05-18T15:15:57.000000Z", + "postPosition": + [-2419314.386939, -3214304.46082, 5811155.711636], + "postPositionTime": "2019-05-18T15:16:07.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.198212, -3517.882354, -4066.398574], + "preVelocityTime": "2019-05-18T15:15:57.000000", + "postVelocity": [-5332.498265, -3474.281564, -4132.201442], + "postVelocityTime": "2019-05-18T15:16:07.000000", + }, + }, + "ascendingNodeTime": "2019-05-18T14:42:13.237082Z", + "relative_start_time": 2027.371610879898, + "relative_center_time": 2028.9328060150146, + "relative_end_time": 2030.4940009117126, + "relative_sv_pre_time": 2023.7629179954529, + "relative_sv_post_time": 2033.7629179954529, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190530T151559_VV_12A3-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_016475_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 16475, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190530T151559_VV_12A3-BURST", + "sensor": "C-SAR", + "startTime": "2019-05-30T15:16:01.141408Z", + "stopTime": "2019-05-30T15:16:04.263798Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190530T151545_20190530T151612_016475_01F02E_12A3/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190530T151559_VV_12A3-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 35385698, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-05-30T15:15:59.988196", + "azimuthAnxTime": "2026.202937215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190530T151545_20190530T151612_016475_01F02E_12A3/IW3/VV/5.xml", + ], + "temporalBaseline": 288, + "perpendicularBaseline": 32, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709387573-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190530T151559_VV_12A3-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:41.533Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-05-30T15:16:01.141408Z", + "EndingDateTime": "2019-05-30T15:16:04.263798Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 16475 }], + "GranuleUR": "S1_372326_IW3_20190530T151559_VV_12A3-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-05-30T14:42:13.780163Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.202937215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-05-30T15:15:59.988196"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["35385698"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_016475_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419292.538164,-3214430.275857,5811094.550887,2019-05-30T15:16:08.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365858.03482,-3179470.062392,5852088.308943,2019-05-30T15:15:58.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.545181,-3474.190111,-4132.238521,2019-05-30T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.245018,-3517.792394,-4066.436314,2019-05-30T15:15:58.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:41Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:41Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190530T151545_20190530T151612_016475_01F02E_12A3/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190530T151545_20190530T151612_016475_01F02E_12A3/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190530T151545_20190530T151612_016475_01F02E_12A3-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365858.03482, -3179470.062392, 5852088.308943], + "prePositionTime": "2019-05-30T15:15:58.000000Z", + "postPosition": + [-2419292.538164, -3214430.275857, 5811094.550887], + "postPositionTime": "2019-05-30T15:16:08.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.245018, -3517.792394, -4066.436314], + "preVelocityTime": "2019-05-30T15:15:58.000000", + "postVelocity": [-5332.545181, -3474.190111, -4132.238521], + "postVelocityTime": "2019-05-30T15:16:08.000000", + }, + }, + "ascendingNodeTime": "2019-05-30T14:42:13.780163Z", + "relative_start_time": 2027.361244916916, + "relative_center_time": 2028.922439813614, + "relative_end_time": 2030.4836349487305, + "relative_sv_pre_time": 2024.2198369503021, + "relative_sv_post_time": 2034.2198369503021, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190611T151600_VV_02EF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_016650_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 16650, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190611T151600_VV_02EF-BURST", + "sensor": "C-SAR", + "startTime": "2019-06-11T15:16:01.817769Z", + "stopTime": "2019-06-11T15:16:04.940159Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190611T151545_20190611T151612_016650_01F566_02EF/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190611T151600_VV_02EF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 35761585, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-06-11T15:16:00.664557", + "azimuthAnxTime": "2026.2103786587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190611T151545_20190611T151612_016650_01F566_02EF/IW3/VV/5.xml", + ], + "temporalBaseline": 300, + "perpendicularBaseline": -17, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709386793-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190611T151600_VV_02EF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:02.431Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-06-11T15:16:01.817769Z", + "EndingDateTime": "2019-06-11T15:16:04.940159Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 16650 }], + "GranuleUR": "S1_372326_IW3_20190611T151600_VV_02EF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-06-11T14:42:14.449165Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2103786587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-06-11T15:16:00.664557"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["35761585"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_016650_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419199.763705,-3214431.917736,5811122.555965,2019-06-11T15:16:09.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365765.349159,-3179470.947474,5852115.936132,2019-06-11T15:15:59.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.536817,-3474.265733,-4132.200988,2019-06-11T15:16:09.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.235587,-3517.868134,-4066.398249,2019-06-11T15:15:59.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:02Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:02Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190611T151545_20190611T151612_016650_01F566_02EF/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190611T151545_20190611T151612_016650_01F566_02EF/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190611T151545_20190611T151612_016650_01F566_02EF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365765.349159, -3179470.947474, 5852115.936132], + "prePositionTime": "2019-06-11T15:15:59.000000Z", + "postPosition": + [-2419199.763705, -3214431.917736, 5811122.555965], + "postPositionTime": "2019-06-11T15:16:09.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.235587, -3517.868134, -4066.398249], + "preVelocityTime": "2019-06-11T15:15:59.000000", + "postVelocity": [-5332.536817, -3474.265733, -4132.200988], + "postVelocityTime": "2019-06-11T15:16:09.000000", + }, + }, + "ascendingNodeTime": "2019-06-11T14:42:14.449165Z", + "relative_start_time": 2027.3686039447784, + "relative_center_time": 2028.9297988414764, + "relative_end_time": 2030.490993976593, + "relative_sv_pre_time": 2024.5508348941803, + "relative_sv_post_time": 2034.5508348941803, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190623T151601_VV_C68A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_016825_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 16825, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190623T151601_VV_C68A-BURST", + "sensor": "C-SAR", + "startTime": "2019-06-23T15:16:02.541677Z", + "stopTime": "2019-06-23T15:16:05.664067Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190623T151546_20190623T151613_016825_01FA95_C68A/IW3/VV/5.tiff", + "pgeVersion": "002.91", + "fileName": "S1_372326_IW3_20190623T151601_VV_C68A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 36137473, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-06-23T15:16:01.388450", + "azimuthAnxTime": "2026.2072586587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190623T151546_20190623T151613_016825_01FA95_C68A/IW3/VV/5.xml", + ], + "temporalBaseline": 312, + "perpendicularBaseline": -12, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709374710-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190623T151601_VV_C68A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:23:56.261Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-06-23T15:16:02.541677Z", + "EndingDateTime": "2019-06-23T15:16:05.664067Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 16825 }], + "GranuleUR": "S1_372326_IW3_20190623T151601_VV_C68A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-06-23T14:42:15.176362Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2072586587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-06-23T15:16:01.388450"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["36137473"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_016825_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419214.825319,-3214435.358292,5811109.02417,2019-06-23T15:16:09.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365780.331963,-3179474.562878,5852102.532927,2019-06-23T15:15:59.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.544573,-3474.2482,-4132.213844,2019-06-23T15:16:09.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.243588,-3517.850727,-4066.411134,2019-06-23T15:15:59.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:23:55Z" }, + { "Type": "Update", "Date": "2023-06-16T01:23:55Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "002.91" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190623T151546_20190623T151613_016825_01FA95_C68A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190623T151546_20190623T151613_016825_01FA95_C68A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190623T151546_20190623T151613_016825_01FA95_C68A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365780.331963, -3179474.562878, 5852102.532927], + "prePositionTime": "2019-06-23T15:15:59.000000Z", + "postPosition": + [-2419214.825319, -3214435.358292, 5811109.02417], + "postPositionTime": "2019-06-23T15:16:09.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.243588, -3517.850727, -4066.411134], + "preVelocityTime": "2019-06-23T15:15:59.000000", + "postVelocity": [-5332.544573, -3474.2482, -4132.213844], + "postVelocityTime": "2019-06-23T15:16:09.000000", + }, + }, + "ascendingNodeTime": "2019-06-23T14:42:15.176362Z", + "relative_start_time": 2027.3653149604797, + "relative_center_time": 2028.9265098571777, + "relative_end_time": 2030.4877049922943, + "relative_sv_pre_time": 2023.8236379623413, + "relative_sv_post_time": 2033.8236379623413, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190705T151602_VV_D62F-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_017000_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 17000, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190705T151602_VV_D62F-BURST", + "sensor": "C-SAR", + "startTime": "2019-07-05T15:16:03.367818Z", + "stopTime": "2019-07-05T15:16:06.490208Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190705T151547_20190705T151614_017000_01FFC4_D62F/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190705T151602_VV_D62F-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 36513360, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-07-05T15:16:02.220758", + "azimuthAnxTime": "2026.2153227713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190705T151547_20190705T151614_017000_01FFC4_D62F/IW3/VV/5.xml", + ], + "temporalBaseline": 324, + "perpendicularBaseline": 69, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709381849-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190705T151602_VV_D62F-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:14.216Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-07-05T15:16:03.367818Z", + "EndingDateTime": "2019-07-05T15:16:06.490208Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 17000 }], + "GranuleUR": "S1_372326_IW3_20190705T151602_VV_D62F-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-07-05T14:42:16.000414Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2153227713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-07-05T15:16:02.220758"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["36513360"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_017000_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419289.04738,-3214367.894251,5811122.559149,2019-07-05T15:16:10.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365854.734118,-3179407.15739,5852116.137968,2019-07-05T15:16:00.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.52617,-3474.242798,-4132.220847,2019-07-05T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.225964,-3517.844456,-4066.418151,2019-07-05T15:16:00.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:14Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:14Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190705T151547_20190705T151614_017000_01FFC4_D62F/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190705T151547_20190705T151614_017000_01FFC4_D62F/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190705T151547_20190705T151614_017000_01FFC4_D62F-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365854.734118, -3179407.15739, 5852116.137968], + "prePositionTime": "2019-07-05T15:16:00.000000Z", + "postPosition": + [-2419289.04738, -3214367.894251, 5811122.559149], + "postPositionTime": "2019-07-05T15:16:10.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.225964, -3517.844456, -4066.418151], + "preVelocityTime": "2019-07-05T15:16:00.000000", + "postVelocity": [-5332.52617, -3474.242798, -4132.220847], + "postVelocityTime": "2019-07-05T15:16:10.000000", + }, + }, + "ascendingNodeTime": "2019-07-05T14:42:16.000414Z", + "relative_start_time": 2027.3674042224884, + "relative_center_time": 2028.9285991191864, + "relative_end_time": 2030.4897940158844, + "relative_sv_pre_time": 2023.9995861053467, + "relative_sv_post_time": 2033.9995861053467, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190717T151602_VV_CBE4-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_017175_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 17175, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190717T151602_VV_CBE4-BURST", + "sensor": "C-SAR", + "startTime": "2019-07-17T15:16:03.949987Z", + "stopTime": "2019-07-17T15:16:07.072377Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190717T151548_20190717T151615_017175_0204EA_CBE4/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190717T151602_VV_CBE4-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 36889248, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-07-17T15:16:02.804998", + "azimuthAnxTime": "2026.2166158839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190717T151548_20190717T151615_017175_0204EA_CBE4/IW3/VV/5.xml", + ], + "temporalBaseline": 336, + "perpendicularBaseline": 75, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709367213-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190717T151602_VV_CBE4-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:18:50.060Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-07-17T15:16:03.949987Z", + "EndingDateTime": "2019-07-17T15:16:07.072377Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 17175 }], + "GranuleUR": "S1_372326_IW3_20190717T151602_VV_CBE4-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-07-17T14:42:16.583334Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2166158839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-07-17T15:16:02.804998"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["36889248"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_017175_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419282.54505,-3214360.093841,5811137.088422,2019-07-17T15:16:11.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365848.713062,-3179398.706923,5852130.554774,2019-07-17T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.478175,-3474.307931,-4132.209605,2019-07-17T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.177739,-3517.909329,-4066.40692,2019-07-17T15:16:01.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:18:49Z" }, + { "Type": "Update", "Date": "2023-06-16T01:18:49Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190717T151548_20190717T151615_017175_0204EA_CBE4/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190717T151548_20190717T151615_017175_0204EA_CBE4/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190717T151548_20190717T151615_017175_0204EA_CBE4-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365848.713062, -3179398.706923, 5852130.554774], + "prePositionTime": "2019-07-17T15:16:01.000000Z", + "postPosition": + [-2419282.54505, -3214360.093841, 5811137.088422], + "postPositionTime": "2019-07-17T15:16:11.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.177739, -3517.909329, -4066.40692], + "preVelocityTime": "2019-07-17T15:16:01.000000", + "postVelocity": [-5332.478175, -3474.307931, -4132.209605], + "postVelocityTime": "2019-07-17T15:16:11.000000", + }, + }, + "ascendingNodeTime": "2019-07-17T14:42:16.583334Z", + "relative_start_time": 2027.3666529655457, + "relative_center_time": 2028.9278478622437, + "relative_end_time": 2030.4890429973602, + "relative_sv_pre_time": 2024.4166660308838, + "relative_sv_post_time": 2034.4166660308838, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190729T151603_VV_1866-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_017350_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 17350, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190729T151603_VV_1866-BURST", + "sensor": "C-SAR", + "startTime": "2019-07-29T15:16:04.667196Z", + "stopTime": "2019-07-29T15:16:07.789586Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190729T151548_20190729T151615_017350_020A0A_1866/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190729T151603_VV_1866-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 37265135, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-07-29T15:16:03.509859", + "azimuthAnxTime": "2026.2071149898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190729T151548_20190729T151615_017350_020A0A_1866/IW3/VV/5.xml", + ], + "temporalBaseline": 348, + "perpendicularBaseline": 22, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709389583-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190729T151603_VV_1866-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:24.974Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-07-29T15:16:04.667196Z", + "EndingDateTime": "2019-07-29T15:16:07.789586Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 17350 }], + "GranuleUR": "S1_372326_IW3_20190729T151603_VV_1866-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-07-29T14:42:17.298046Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2071149898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-07-29T15:16:03.509859"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["37265135"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_017350_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419223.894515,-3214393.691719,5811130.931869,2019-07-29T15:16:11.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365789.545035,-3179432.618142,5852124.294372,2019-07-29T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.530183,-3474.276288,-4132.199314,2019-07-29T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.229244,-3517.878279,-4066.396426,2019-07-29T15:16:01.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:24Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:24Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190729T151548_20190729T151615_017350_020A0A_1866/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190729T151548_20190729T151615_017350_020A0A_1866/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190729T151548_20190729T151615_017350_020A0A_1866-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365789.545035, -3179432.618142, 5852124.294372], + "prePositionTime": "2019-07-29T15:16:01.000000Z", + "postPosition": + [-2419223.894515, -3214393.691719, 5811130.931869], + "postPositionTime": "2019-07-29T15:16:11.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.229244, -3517.878279, -4066.396426], + "preVelocityTime": "2019-07-29T15:16:01.000000", + "postVelocity": [-5332.530183, -3474.276288, -4132.199314], + "postVelocityTime": "2019-07-29T15:16:11.000000", + }, + }, + "ascendingNodeTime": "2019-07-29T14:42:17.298046Z", + "relative_start_time": 2027.3691499233246, + "relative_center_time": 2028.9303450584412, + "relative_end_time": 2030.4915399551392, + "relative_sv_pre_time": 2023.7019538879395, + "relative_sv_post_time": 2033.7019538879395, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190810T151604_VV_D36E-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_017525_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 17525, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190810T151604_VV_D36E-BURST", + "sensor": "C-SAR", + "startTime": "2019-08-10T15:16:05.582875Z", + "stopTime": "2019-08-10T15:16:08.705265Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190810T151549_20190810T151616_017525_020F5A_D36E/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190810T151604_VV_D36E-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 37641022, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-08-10T15:16:04.437871", + "azimuthAnxTime": "2026.2135128839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190810T151549_20190810T151616_017525_020F5A_D36E/IW3/VV/5.xml", + ], + "temporalBaseline": 360, + "perpendicularBaseline": 10, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709404898-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190810T151604_VV_D36E-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:25.565Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-08-10T15:16:05.582875Z", + "EndingDateTime": "2019-08-10T15:16:08.705265Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 17525 }], + "GranuleUR": "S1_372326_IW3_20190810T151604_VV_D36E-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-08-10T14:42:18.218886Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2135128839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-08-10T15:16:04.437871"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["37641022"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_017525_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419264.840751,-3214447.18682,5811096.448036,2019-08-10T15:16:12.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365830.027344,-3179487.219286,5852090.071862,2019-08-10T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.576319,-3474.165416,-4132.22511,2019-08-10T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.275879,-3517.767932,-4066.42288,2019-08-10T15:16:02.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:25Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:25Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190810T151549_20190810T151616_017525_020F5A_D36E/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190810T151549_20190810T151616_017525_020F5A_D36E/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190810T151549_20190810T151616_017525_020F5A_D36E-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365830.027344, -3179487.219286, 5852090.071862], + "prePositionTime": "2019-08-10T15:16:02.000000Z", + "postPosition": + [-2419264.840751, -3214447.18682, 5811096.448036], + "postPositionTime": "2019-08-10T15:16:12.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.275879, -3517.767932, -4066.42288], + "preVelocityTime": "2019-08-10T15:16:02.000000", + "postVelocity": [-5332.576319, -3474.165416, -4132.22511], + "postVelocityTime": "2019-08-10T15:16:12.000000", + }, + }, + "ascendingNodeTime": "2019-08-10T14:42:18.218886Z", + "relative_start_time": 2027.3639891147614, + "relative_center_time": 2028.925184249878, + "relative_end_time": 2030.486379146576, + "relative_sv_pre_time": 2023.78111410141, + "relative_sv_post_time": 2033.78111410141, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190822T151605_VV_28E0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_017700_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 17700, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190822T151605_VV_28E0-BURST", + "sensor": "C-SAR", + "startTime": "2019-08-22T15:16:06.186528Z", + "stopTime": "2019-08-22T15:16:09.308918Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190822T151550_20190822T151617_017700_0214D2_28E0/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190822T151605_VV_28E0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 38016910, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-08-22T15:16:05.037429", + "azimuthAnxTime": "2026.2139131024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190822T151550_20190822T151617_017700_0214D2_28E0/IW3/VV/5.xml", + ], + "temporalBaseline": 372, + "perpendicularBaseline": 0, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709387646-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190822T151605_VV_28E0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:59.247Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-08-22T15:16:06.186528Z", + "EndingDateTime": "2019-08-22T15:16:09.308918Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 17700 }], + "GranuleUR": "S1_372326_IW3_20190822T151605_VV_28E0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-08-22T14:42:18.818461Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2139131024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-08-22T15:16:05.037429"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["38016910"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_017700_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419225.124086,-3214435.806827,5811121.401183,2019-08-22T15:16:13.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365790.224244,-3179475.634457,5852114.694834,2019-08-22T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.585198,-3474.185961,-4132.192198,2019-08-22T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.284253,-3517.788341,-4066.389738,2019-08-22T15:16:03.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:58Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:58Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190822T151550_20190822T151617_017700_0214D2_28E0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190822T151550_20190822T151617_017700_0214D2_28E0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190822T151550_20190822T151617_017700_0214D2_28E0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365790.224244, -3179475.634457, 5852114.694834], + "prePositionTime": "2019-08-22T15:16:03.000000Z", + "postPosition": + [-2419225.124086, -3214435.806827, 5811121.401183], + "postPositionTime": "2019-08-22T15:16:13.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.284253, -3517.788341, -4066.389738], + "preVelocityTime": "2019-08-22T15:16:03.000000", + "postVelocity": [-5332.585198, -3474.185961, -4132.192198], + "postVelocityTime": "2019-08-22T15:16:13.000000", + }, + }, + "ascendingNodeTime": "2019-08-22T14:42:18.818461Z", + "relative_start_time": 2027.3680670261383, + "relative_center_time": 2028.9292621612549, + "relative_end_time": 2030.4904570579529, + "relative_sv_pre_time": 2024.1815390586853, + "relative_sv_post_time": 2034.1815390586853, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190903T151605_VV_27B6-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_017875_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 17875, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190903T151605_VV_27B6-BURST", + "sensor": "C-SAR", + "startTime": "2019-09-03T15:16:06.776693Z", + "stopTime": "2019-09-03T15:16:09.899083Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190903T151550_20190903T151617_017875_021A3E_27B6/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190903T151605_VV_27B6-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 38392797, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-09-03T15:16:05.629651", + "azimuthAnxTime": "2026.2170786587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190903T151550_20190903T151617_017875_021A3E_27B6/IW3/VV/5.xml", + ], + "temporalBaseline": 384, + "perpendicularBaseline": 11, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377033-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190903T151605_VV_27B6-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:38.523Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-09-03T15:16:06.776693Z", + "EndingDateTime": "2019-09-03T15:16:09.899083Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 17875 }], + "GranuleUR": "S1_372326_IW3_20190903T151605_VV_27B6-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-09-03T14:42:19.412572Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2170786587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-09-03T15:16:05.629651"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["38392797"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_017875_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419240.823369,-3214427.365753,5811118.936983,2019-09-03T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365806.279676,-3179466.860167,5852112.386478,2019-09-03T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.549512,-3474.219351,-4132.207774,2019-09-03T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.248702,-3517.821595,-4066.405327,2019-09-03T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:38Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:38Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190903T151550_20190903T151617_017875_021A3E_27B6/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190903T151550_20190903T151617_017875_021A3E_27B6/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190903T151550_20190903T151617_017875_021A3E_27B6-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365806.279676, -3179466.860167, 5852112.386478], + "prePositionTime": "2019-09-03T15:16:04.000000Z", + "postPosition": + [-2419240.823369, -3214427.365753, 5811118.936983], + "postPositionTime": "2019-09-03T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.248702, -3517.821595, -4066.405327], + "preVelocityTime": "2019-09-03T15:16:04.000000", + "postVelocity": [-5332.549512, -3474.219351, -4132.207774], + "postVelocityTime": "2019-09-03T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2019-09-03T14:42:19.412572Z", + "relative_start_time": 2027.3641211986542, + "relative_center_time": 2028.9253160953522, + "relative_end_time": 2030.4865109920502, + "relative_sv_pre_time": 2024.5874280929565, + "relative_sv_post_time": 2034.5874280929565, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190915T151606_VV_7C5E-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_018050_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 18050, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190915T151606_VV_7C5E-BURST", + "sensor": "C-SAR", + "startTime": "2019-09-15T15:16:07.317800Z", + "stopTime": "2019-09-15T15:16:10.440190Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190915T151551_20190915T151618_018050_021FB2_7C5E/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190915T151606_VV_7C5E-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 38768684, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-09-15T15:16:06.176909", + "azimuthAnxTime": "2026.2246997713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190915T151551_20190915T151618_018050_021FB2_7C5E/IW3/VV/5.xml", + ], + "temporalBaseline": 396, + "perpendicularBaseline": 41, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709381365-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190915T151606_VV_7C5E-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:53.250Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-09-15T15:16:07.317800Z", + "EndingDateTime": "2019-09-15T15:16:10.440190Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 18050 }], + "GranuleUR": "S1_372326_IW3_20190915T151606_VV_7C5E-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-09-15T14:42:19.946751Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2246997713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-09-15T15:16:06.176909"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["38768684"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_018050_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419229.810875,-3214384.822454,5811151.527826,2019-09-15T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365795.555712,-3179423.700323,5852144.655126,2019-09-15T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.52078,-3474.281315,-4132.175695,2019-09-15T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.219726,-3517.882978,-4066.372989,2019-09-15T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:53Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:53Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190915T151551_20190915T151618_018050_021FB2_7C5E/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190915T151551_20190915T151618_018050_021FB2_7C5E/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190915T151551_20190915T151618_018050_021FB2_7C5E-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365795.555712, -3179423.700323, 5852144.655126], + "prePositionTime": "2019-09-15T15:16:04.000000Z", + "postPosition": + [-2419229.810875, -3214384.822454, 5811151.527826], + "postPositionTime": "2019-09-15T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.219726, -3517.882978, -4066.372989], + "preVelocityTime": "2019-09-15T15:16:04.000000", + "postVelocity": [-5332.52078, -3474.281315, -4132.175695], + "postVelocityTime": "2019-09-15T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2019-09-15T14:42:19.946751Z", + "relative_start_time": 2027.3710489273071, + "relative_center_time": 2028.9322438240051, + "relative_end_time": 2030.4934389591217, + "relative_sv_pre_time": 2024.0532488822937, + "relative_sv_post_time": 2034.0532488822937, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20190927T151606_VV_7A95-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_018225_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 18225, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20190927T151606_VV_7A95-BURST", + "sensor": "C-SAR", + "startTime": "2019-09-27T15:16:07.964635Z", + "stopTime": "2019-09-27T15:16:11.087025Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190927T151552_20190927T151619_018225_022516_7A95/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20190927T151606_VV_7A95-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 39144572, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-09-27T15:16:06.821688", + "azimuthAnxTime": "2026.228352215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190927T151552_20190927T151619_018225_022516_7A95/IW3/VV/5.xml", + ], + "temporalBaseline": 408, + "perpendicularBaseline": 154, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377913-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20190927T151606_VV_7A95-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:20.494Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-09-27T15:16:07.964635Z", + "EndingDateTime": "2019-09-27T15:16:11.087025Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 18225 }], + "GranuleUR": "S1_372326_IW3_20190927T151606_VV_7A95-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-09-27T14:42:20.586115Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.228352215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-09-27T15:16:06.821688"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["39144572"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_018225_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419292.970252,-3214279.296074,5811210.781573,2019-09-27T15:16:15.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365858.263099,-3179318.804327,5852203.325279,2019-09-27T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.565721,-3474.219014,-4132.117366,2019-09-27T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.265213,-3517.819215,-4066.31462,2019-09-27T15:16:05.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:20Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:20Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190927T151552_20190927T151619_018225_022516_7A95/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20190927T151552_20190927T151619_018225_022516_7A95/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20190927T151552_20190927T151619_018225_022516_7A95-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365858.263099, -3179318.804327, 5852203.325279], + "prePositionTime": "2019-09-27T15:16:05.000000Z", + "postPosition": + [-2419292.970252, -3214279.296074, 5811210.781573], + "postPositionTime": "2019-09-27T15:16:15.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.265213, -3517.819215, -4066.31462], + "preVelocityTime": "2019-09-27T15:16:05.000000", + "postVelocity": [-5332.565721, -3474.219014, -4132.117366], + "postVelocityTime": "2019-09-27T15:16:15.000000", + }, + }, + "ascendingNodeTime": "2019-09-27T14:42:20.586115Z", + "relative_start_time": 2027.3785200119019, + "relative_center_time": 2028.9397149085999, + "relative_end_time": 2030.5009100437164, + "relative_sv_pre_time": 2024.4138851165771, + "relative_sv_post_time": 2034.4138851165771, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191009T151606_VV_3617-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_018400_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 18400, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191009T151606_VV_3617-BURST", + "sensor": "C-SAR", + "startTime": "2019-10-09T15:16:07.789403Z", + "stopTime": "2019-10-09T15:16:10.911793Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191009T151551_20191009T151618_018400_022A9C_3617/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191009T151606_VV_3617-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 39520459, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-10-09T15:16:06.652638", + "azimuthAnxTime": "2026.2409883276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191009T151551_20191009T151618_018400_022A9C_3617/IW3/VV/5.xml", + ], + "temporalBaseline": 420, + "perpendicularBaseline": 5, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377779-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191009T151606_VV_3617-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:00.154Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-10-09T15:16:07.789403Z", + "EndingDateTime": "2019-10-09T15:16:10.911793Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 18400 }], + "GranuleUR": "S1_372326_IW3_20191009T151606_VV_3617-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-10-09T14:42:20.406488Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2409883276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-10-09T15:16:06.652638"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["39520459"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_018400_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419104.45918,-3214395.976398,5811235.761219,2019-10-09T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365670.174451,-3179434.242375,5852227.761085,2019-10-09T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.524683,-3474.342685,-4132.062991,2019-10-09T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.221774,-3517.943982,-4066.260224,2019-10-09T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:59Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:59Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191009T151551_20191009T151618_018400_022A9C_3617/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191009T151551_20191009T151618_018400_022A9C_3617/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191009T151551_20191009T151618_018400_022A9C_3617-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365670.174451, -3179434.242375, 5852227.761085], + "prePositionTime": "2019-10-09T15:16:04.000000Z", + "postPosition": + [-2419104.45918, -3214395.976398, 5811235.761219], + "postPositionTime": "2019-10-09T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.221774, -3517.943982, -4066.260224], + "preVelocityTime": "2019-10-09T15:16:04.000000", + "postVelocity": [-5332.524683, -3474.342685, -4132.062991], + "postVelocityTime": "2019-10-09T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2019-10-09T14:42:20.406488Z", + "relative_start_time": 2027.382915019989, + "relative_center_time": 2028.944109916687, + "relative_end_time": 2030.5053050518036, + "relative_sv_pre_time": 2023.593512058258, + "relative_sv_post_time": 2033.593512058258, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191021T151606_VV_5890-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_018575_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 18575, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191021T151606_VV_5890-BURST", + "sensor": "C-SAR", + "startTime": "2019-10-21T15:16:08.019994Z", + "stopTime": "2019-10-21T15:16:11.142384Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191021T151552_20191021T151619_018575_022FF9_5890/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191021T151606_VV_5890-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 39896347, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-10-21T15:16:06.877046", + "azimuthAnxTime": "2026.2416141024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191021T151552_20191021T151619_018575_022FF9_5890/IW3/VV/5.xml", + ], + "temporalBaseline": 432, + "perpendicularBaseline": 9, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709374147-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191021T151606_VV_5890-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:21.639Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-10-21T15:16:08.019994Z", + "EndingDateTime": "2019-10-21T15:16:11.142384Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 18575 }], + "GranuleUR": "S1_372326_IW3_20191021T151606_VV_5890-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-10-21T14:42:20.630280Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2416141024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-10-21T15:16:06.877046"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["39896347"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_018575_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419091.970434,-3214392.991977,5811261.366585,2019-10-21T15:16:15.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365656.804976,-3179432.322523,5852252.940077,2019-10-21T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.612849,-3474.236274,-4132.020272,2019-10-21T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.309763,-3517.837438,-4066.21765,2019-10-21T15:16:05.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:21Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:21Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191021T151552_20191021T151619_018575_022FF9_5890/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191021T151552_20191021T151619_018575_022FF9_5890/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191021T151552_20191021T151619_018575_022FF9_5890-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365656.804976, -3179432.322523, 5852252.940077], + "prePositionTime": "2019-10-21T15:16:05.000000Z", + "postPosition": + [-2419091.970434, -3214392.991977, 5811261.366585], + "postPositionTime": "2019-10-21T15:16:15.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.309763, -3517.837438, -4066.21765], + "preVelocityTime": "2019-10-21T15:16:05.000000", + "postVelocity": [-5332.612849, -3474.236274, -4132.020272], + "postVelocityTime": "2019-10-21T15:16:15.000000", + }, + }, + "ascendingNodeTime": "2019-10-21T14:42:20.630280Z", + "relative_start_time": 2027.3897140026093, + "relative_center_time": 2028.9509091377258, + "relative_end_time": 2030.5121040344238, + "relative_sv_pre_time": 2024.3697199821472, + "relative_sv_post_time": 2034.3697199821472, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191102T151606_VV_C44C-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_018750_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 18750, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191102T151606_VV_C44C-BURST", + "sensor": "C-SAR", + "startTime": "2019-11-02T15:16:07.794454Z", + "stopTime": "2019-11-02T15:16:10.916844Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191102T151551_20191102T151618_018750_023578_C44C/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191102T151606_VV_C44C-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 40272234, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-11-02T15:16:06.649465", + "azimuthAnxTime": "2026.2474621024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191102T151551_20191102T151618_018750_023578_C44C/IW3/VV/5.xml", + ], + "temporalBaseline": 444, + "perpendicularBaseline": 25, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709358822-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191102T151606_VV_C44C-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:00.588Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-11-02T15:16:07.794454Z", + "EndingDateTime": "2019-11-02T15:16:10.916844Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 18750 }], + "GranuleUR": "S1_372326_IW3_20191102T151606_VV_C44C-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-11-02T14:42:20.396551Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2474621024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-11-02T15:16:06.649465"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["40272234"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_018750_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419051.484104,-3214362.395649,5811309.189511,2019-11-02T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365616.912451,-3179400.703804,5852300.365767,2019-11-02T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.553828,-3474.338812,-4131.980648,2019-11-02T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.250008,-3517.939369,-4066.177818,2019-11-02T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:00Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:00Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191102T151551_20191102T151618_018750_023578_C44C/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191102T151551_20191102T151618_018750_023578_C44C/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191102T151551_20191102T151618_018750_023578_C44C-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365616.912451, -3179400.703804, 5852300.365767], + "prePositionTime": "2019-11-02T15:16:04.000000Z", + "postPosition": + [-2419051.484104, -3214362.395649, 5811309.189511], + "postPositionTime": "2019-11-02T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.250008, -3517.939369, -4066.177818], + "preVelocityTime": "2019-11-02T15:16:04.000000", + "postVelocity": [-5332.553828, -3474.338812, -4131.980648], + "postVelocityTime": "2019-11-02T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2019-11-02T14:42:20.396551Z", + "relative_start_time": 2027.3979032039642, + "relative_center_time": 2028.9590981006622, + "relative_end_time": 2030.5202929973602, + "relative_sv_pre_time": 2023.6034491062164, + "relative_sv_post_time": 2033.6034491062164, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191114T151606_VV_22DC-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_018925_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 18925, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191114T151606_VV_22DC-BURST", + "sensor": "C-SAR", + "startTime": "2019-11-14T15:16:07.891027Z", + "stopTime": "2019-11-14T15:16:11.013417Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191114T151551_20191114T151618_018925_023B22_22DC/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191114T151606_VV_22DC-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 40648121, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-11-14T15:16:06.741927", + "azimuthAnxTime": "2026.2471865461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191114T151551_20191114T151618_018925_023B22_22DC/IW3/VV/5.xml", + ], + "temporalBaseline": 456, + "perpendicularBaseline": 130, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709370008-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191114T151606_VV_22DC-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:26.535Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-11-14T15:16:07.891027Z", + "EndingDateTime": "2019-11-14T15:16:11.013417Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 18925 }], + "GranuleUR": "S1_372326_IW3_20191114T151606_VV_22DC-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-11-14T14:42:20.543231Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2471865461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-11-14T15:16:06.741927"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["40648121"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_018925_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419119.901933,-3214249.074278,5811348.28927,2019-11-14T15:16:15.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365685.27872,-3179287.450395,5852339.225515,2019-11-14T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.5586,-3474.332677,-4131.956803,2019-11-14T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.255513,-3517.931916,-4066.15365,2019-11-14T15:16:05.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:26Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:26Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191114T151551_20191114T151618_018925_023B22_22DC/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191114T151551_20191114T151618_018925_023B22_22DC/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191114T151551_20191114T151618_018925_023B22_22DC-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365685.27872, -3179287.450395, 5852339.225515], + "prePositionTime": "2019-11-14T15:16:05.000000Z", + "postPosition": + [-2419119.901933, -3214249.074278, 5811348.28927], + "postPositionTime": "2019-11-14T15:16:15.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.255513, -3517.931916, -4066.15365], + "preVelocityTime": "2019-11-14T15:16:05.000000", + "postVelocity": [-5332.5586, -3474.332677, -4131.956803], + "postVelocityTime": "2019-11-14T15:16:15.000000", + }, + }, + "ascendingNodeTime": "2019-11-14T14:42:20.543231Z", + "relative_start_time": 2027.3477959632874, + "relative_center_time": 2028.9089908599854, + "relative_end_time": 2030.470185995102, + "relative_sv_pre_time": 2024.456768989563, + "relative_sv_post_time": 2034.456768989563, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191126T151606_VV_9CC8-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_019100_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 19100, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191126T151606_VV_9CC8-BURST", + "sensor": "C-SAR", + "startTime": "2019-11-26T15:16:07.485433Z", + "stopTime": "2019-11-26T15:16:10.607823Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191126T151551_20191126T151618_019100_0240C2_9CC8/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191126T151606_VV_9CC8-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 41024009, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-11-26T15:16:06.334263", + "azimuthAnxTime": "2026.2515786587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191126T151551_20191126T151618_019100_0240C2_9CC8/IW3/VV/5.xml", + ], + "temporalBaseline": 468, + "perpendicularBaseline": 156, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709353247-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191126T151606_VV_9CC8-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:18.185Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-11-26T15:16:07.485433Z", + "EndingDateTime": "2019-11-26T15:16:10.607823Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19100 }], + "GranuleUR": "S1_372326_IW3_20191126T151606_VV_9CC8-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-11-26T14:42:20.077759Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2515786587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-11-26T15:16:06.334263"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["41024009"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_019100_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419072.81973,-3214195.571426,5811409.001991,2019-11-26T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365638.803431,-3179232.704481,5852399.343115,2019-11-26T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.49831,-3474.457409,-4131.897499,2019-11-26T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.194412,-3518.055805,-4066.093934,2019-11-26T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:18Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:18Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191126T151551_20191126T151618_019100_0240C2_9CC8/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191126T151551_20191126T151618_019100_0240C2_9CC8/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191126T151551_20191126T151618_019100_0240C2_9CC8-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365638.803431, -3179232.704481, 5852399.343115], + "prePositionTime": "2019-11-26T15:16:04.000000Z", + "postPosition": + [-2419072.81973, -3214195.571426, 5811409.001991], + "postPositionTime": "2019-11-26T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.194412, -3518.055805, -4066.093934], + "preVelocityTime": "2019-11-26T15:16:04.000000", + "postVelocity": [-5332.49831, -3474.457409, -4131.897499], + "postVelocityTime": "2019-11-26T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2019-11-26T14:42:20.077759Z", + "relative_start_time": 2027.407674074173, + "relative_center_time": 2028.968868970871, + "relative_end_time": 2030.530063867569, + "relative_sv_pre_time": 2023.922240972519, + "relative_sv_post_time": 2033.922240972519, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191208T151605_VV_1837-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_019275_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 19275, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191208T151605_VV_1837-BURST", + "sensor": "C-SAR", + "startTime": "2019-12-08T15:16:07.105596Z", + "stopTime": "2019-12-08T15:16:10.227986Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191208T151551_20191208T151618_019275_02464C_1837/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191208T151605_VV_1837-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 41399896, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-12-08T15:16:05.956495", + "azimuthAnxTime": "2026.2522405461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191208T151551_20191208T151618_019275_02464C_1837/IW3/VV/5.xml", + ], + "temporalBaseline": 480, + "perpendicularBaseline": 80, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709405068-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191208T151605_VV_1837-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:23:02.618Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-12-08T15:16:07.105596Z", + "EndingDateTime": "2019-12-08T15:16:10.227986Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19275 }], + "GranuleUR": "S1_372326_IW3_20191208T151605_VV_1837-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-12-08T14:42:19.698743Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2522405461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-12-08T15:16:05.956495"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["41399896"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_019275_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419032.243034,-3214279.106935,5811379.481109,2019-12-08T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365597.768725,-3179316.894711,5852369.967677,2019-12-08T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.544303,-3474.391448,-4131.911894,2019-12-08T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.240047,-3517.990846,-4066.108651,2019-12-08T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:23:02Z" }, + { "Type": "Update", "Date": "2023-06-16T01:23:02Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191208T151551_20191208T151618_019275_02464C_1837/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191208T151551_20191208T151618_019275_02464C_1837/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191208T151551_20191208T151618_019275_02464C_1837-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365597.768725, -3179316.894711, 5852369.967677], + "prePositionTime": "2019-12-08T15:16:04.000000Z", + "postPosition": + [-2419032.243034, -3214279.106935, 5811379.481109], + "postPositionTime": "2019-12-08T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.240047, -3517.990846, -4066.108651], + "preVelocityTime": "2019-12-08T15:16:04.000000", + "postVelocity": [-5332.544303, -3474.391448, -4131.911894], + "postVelocityTime": "2019-12-08T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2019-12-08T14:42:19.698743Z", + "relative_start_time": 2027.4068529605865, + "relative_center_time": 2028.9680478572845, + "relative_end_time": 2030.5292429924011, + "relative_sv_pre_time": 2024.3012568950653, + "relative_sv_post_time": 2034.3012568950653, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20191220T151605_VV_BEF7-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_019450_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 19450, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20191220T151605_VV_BEF7-BURST", + "sensor": "C-SAR", + "startTime": "2019-12-20T15:16:06.610677Z", + "stopTime": "2019-12-20T15:16:09.733067Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191220T151550_20191220T151617_019450_024BE1_BEF7/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20191220T151605_VV_BEF7-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 41775783, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2019-12-20T15:16:05.463616", + "azimuthAnxTime": "2026.2555851024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191220T151550_20191220T151617_019450_024BE1_BEF7/IW3/VV/5.xml", + ], + "temporalBaseline": 492, + "perpendicularBaseline": 45, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709354213-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20191220T151605_VV_BEF7-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:03.390Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2019-12-20T15:16:06.610677Z", + "EndingDateTime": "2019-12-20T15:16:09.733067Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19450 }], + "GranuleUR": "S1_372326_IW3_20191220T151605_VV_BEF7-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2019-12-20T14:42:19.203055Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2555851024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2019-12-20T15:16:05.463616"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["41775783"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_019450_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2418996.547413,-3214309.645696,5811376.151209,2019-12-20T15:16:13.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365561.638285,-3179347.839248,5852366.525358,2019-12-20T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.587964,-3474.350656,-4131.900652,2019-12-20T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.283371,-3517.950475,-4066.097414,2019-12-20T15:16:03.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191220T151550_20191220T151617_019450_024BE1_BEF7/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20191220T151550_20191220T151617_019450_024BE1_BEF7/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20191220T151550_20191220T151617_019450_024BE1_BEF7-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365561.638285, -3179347.839248, 5852366.525358], + "prePositionTime": "2019-12-20T15:16:03.000000Z", + "postPosition": + [-2418996.547413, -3214309.645696, 5811376.151209], + "postPositionTime": "2019-12-20T15:16:13.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.283371, -3517.950475, -4066.097414], + "preVelocityTime": "2019-12-20T15:16:03.000000", + "postVelocity": [-5332.587964, -3474.350656, -4131.900652], + "postVelocityTime": "2019-12-20T15:16:13.000000", + }, + }, + "ascendingNodeTime": "2019-12-20T14:42:19.203055Z", + "relative_start_time": 2027.4076220989227, + "relative_center_time": 2028.9688172340393, + "relative_end_time": 2030.5300121307373, + "relative_sv_pre_time": 2023.7969450950623, + "relative_sv_post_time": 2033.7969450950623, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200101T151604_VV_6239-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_019625_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 19625, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200101T151604_VV_6239-BURST", + "sensor": "C-SAR", + "startTime": "2020-01-01T15:16:05.951665Z", + "stopTime": "2020-01-01T15:16:09.074055Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200101T151550_20200101T151617_019625_025179_6239/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20200101T151604_VV_6239-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 42151671, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-01-01T15:16:04.814882", + "azimuthAnxTime": "2026.2652094402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200101T151550_20200101T151617_019625_025179_6239/IW3/VV/5.xml", + ], + "temporalBaseline": 504, + "perpendicularBaseline": 43, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709380044-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200101T151604_VV_6239-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:21:02.006Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-01-01T15:16:05.951665Z", + "EndingDateTime": "2020-01-01T15:16:09.074055Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19625 }], + "GranuleUR": "S1_372326_IW3_20200101T151604_VV_6239-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-01-01T14:42:18.545035Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2652094402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-01-01T15:16:04.814882"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["42151671"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_019625_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2418980.099965,-3214299.65654,5811390.294582,2020-01-01T15:16:13.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365545.234844,-3179337.610983,5852380.457415,2020-01-01T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.58369,-3474.374623,-4131.879573,2020-01-01T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.278858,-3517.974306,-4066.076223,2020-01-01T15:16:03.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:21:01Z" }, + { "Type": "Update", "Date": "2023-06-16T01:21:01Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200101T151550_20200101T151617_019625_025179_6239/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200101T151550_20200101T151617_019625_025179_6239/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200101T151550_20200101T151617_019625_025179_6239-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365545.234844, -3179337.610983, 5852380.457415], + "prePositionTime": "2020-01-01T15:16:03.000000Z", + "postPosition": + [-2418980.099965, -3214299.65654, 5811390.294582], + "postPositionTime": "2020-01-01T15:16:13.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.278858, -3517.974306, -4066.076223], + "preVelocityTime": "2020-01-01T15:16:03.000000", + "postVelocity": [-5332.58369, -3474.374623, -4131.879573], + "postVelocityTime": "2020-01-01T15:16:13.000000", + }, + }, + "ascendingNodeTime": "2020-01-01T14:42:18.545035Z", + "relative_start_time": 2027.406630039215, + "relative_center_time": 2028.967824935913, + "relative_end_time": 2030.5290200710297, + "relative_sv_pre_time": 2024.4549651145935, + "relative_sv_post_time": 2034.4549651145935, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200113T151604_VV_86F8-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_019800_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 19800, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200113T151604_VV_86F8-BURST", + "sensor": "C-SAR", + "startTime": "2020-01-13T15:16:05.465047Z", + "stopTime": "2020-01-13T15:16:08.587437Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200113T151549_20200113T151616_019800_025701_86F8/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20200113T151604_VV_86F8-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 42527558, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-01-13T15:16:04.324154", + "azimuthAnxTime": "2026.2603311024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200113T151549_20200113T151616_019800_025701_86F8/IW3/VV/5.xml", + ], + "temporalBaseline": 516, + "perpendicularBaseline": 113, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377263-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200113T151604_VV_86F8-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:59.402Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-01-13T15:16:05.465047Z", + "EndingDateTime": "2020-01-13T15:16:08.587437Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19800 }], + "GranuleUR": "S1_372326_IW3_20200113T151604_VV_86F8-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-01-13T14:42:18.058643Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2603311024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-01-13T15:16:04.324154"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["42527558"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_019800_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419044.712094,-3214233.318481,5811392.615214,2020-01-13T15:16:12.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365610.009278,-3179271.214565,5852382.95432,2020-01-13T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.567064,-3474.380774,-4131.897287,2020-01-13T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.263016,-3517.979791,-4066.09374,2020-01-13T15:16:02.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:59Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:59Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200113T151549_20200113T151616_019800_025701_86F8/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200113T151549_20200113T151616_019800_025701_86F8/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200113T151549_20200113T151616_019800_025701_86F8-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365610.009278, -3179271.214565, 5852382.95432], + "prePositionTime": "2020-01-13T15:16:02.000000Z", + "postPosition": + [-2419044.712094, -3214233.318481, 5811392.615214], + "postPositionTime": "2020-01-13T15:16:12.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.263016, -3517.979791, -4066.09374], + "preVelocityTime": "2020-01-13T15:16:02.000000", + "postVelocity": [-5332.567064, -3474.380774, -4131.897287], + "postVelocityTime": "2020-01-13T15:16:12.000000", + }, + }, + "ascendingNodeTime": "2020-01-13T14:42:18.058643Z", + "relative_start_time": 2027.4064037799835, + "relative_center_time": 2028.9675986766815, + "relative_end_time": 2030.528793811798, + "relative_sv_pre_time": 2023.9413568973541, + "relative_sv_post_time": 2033.9413568973541, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200125T151604_VV_C9AA-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_019975_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 19975, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200125T151604_VV_C9AA-BURST", + "sensor": "C-SAR", + "startTime": "2020-01-25T15:16:05.154012Z", + "stopTime": "2020-01-25T15:16:08.276402Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200125T151549_20200125T151616_019975_025C96_C9AA/IW3/VV/5.tiff", + "pgeVersion": "003.10", + "fileName": "S1_372326_IW3_20200125T151604_VV_C9AA-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 42903446, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-01-25T15:16:04.004897", + "azimuthAnxTime": "2026.2484001024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200125T151549_20200125T151616_019975_025C96_C9AA/IW3/VV/5.xml", + ], + "temporalBaseline": 528, + "perpendicularBaseline": 148, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709354676-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200125T151604_VV_C9AA-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:19:25.244Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-01-25T15:16:05.154012Z", + "EndingDateTime": "2020-01-25T15:16:08.276402Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 19975 }], + "GranuleUR": "S1_372326_IW3_20200125T151604_VV_C9AA-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-01-25T14:42:17.751236Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2484001024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-01-25T15:16:04.004897"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["42903446"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_019975_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419107.825576,-3214216.182433,5811370.770945,2020-01-25T15:16:12.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365673.20936,-3179254.316364,5852361.473085,2020-01-25T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.557997,-3474.357062,-4131.933525,2020-01-25T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.254746,-3517.95594,-4066.130104,2020-01-25T15:16:02.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:19:25Z" }, + { "Type": "Update", "Date": "2023-06-16T01:19:25Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.10" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200125T151549_20200125T151616_019975_025C96_C9AA/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200125T151549_20200125T151616_019975_025C96_C9AA/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200125T151549_20200125T151616_019975_025C96_C9AA-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365673.20936, -3179254.316364, 5852361.473085], + "prePositionTime": "2020-01-25T15:16:02.000000Z", + "postPosition": + [-2419107.825576, -3214216.182433, 5811370.770945], + "postPositionTime": "2020-01-25T15:16:12.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.254746, -3517.95594, -4066.130104], + "preVelocityTime": "2020-01-25T15:16:02.000000", + "postVelocity": [-5332.557997, -3474.357062, -4131.933525], + "postVelocityTime": "2020-01-25T15:16:12.000000", + }, + }, + "ascendingNodeTime": "2020-01-25T14:42:17.751236Z", + "relative_start_time": 2027.402776002884, + "relative_center_time": 2028.9639711380005, + "relative_end_time": 2030.5251660346985, + "relative_sv_pre_time": 2024.248764038086, + "relative_sv_post_time": 2034.248764038086, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200206T151603_VV_5023-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_020150_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 20150, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200206T151603_VV_5023-BURST", + "sensor": "C-SAR", + "startTime": "2020-02-06T15:16:04.884176Z", + "stopTime": "2020-02-06T15:16:08.006566Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200206T151548_20200206T151615_020150_02624B_5023/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200206T151603_VV_5023-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 43279333, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-02-06T15:16:03.751520", + "azimuthAnxTime": "2026.2606354402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200206T151548_20200206T151615_020150_02624B_5023/IW3/VV/5.xml", + ], + "temporalBaseline": 540, + "perpendicularBaseline": 142, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709369928-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200206T151603_VV_5023-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:15.172Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-02-06T15:16:04.884176Z", + "EndingDateTime": "2020-02-06T15:16:08.006566Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 20150 }], + "GranuleUR": "S1_372326_IW3_20200206T151603_VV_5023-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-02-06T14:42:17.485770Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2606354402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-02-06T15:16:03.751520"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["43279333"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_020150_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419128.98747,-3214228.734775,5811347.645779,2020-02-06T15:16:12.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365694.502556,-3179266.881015,5852338.639146,2020-02-06T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.544695,-3474.355737,-4131.962605,2020-02-06T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.241758,-3517.954827,-4066.159269,2020-02-06T15:16:02.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:14Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:14Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200206T151548_20200206T151615_020150_02624B_5023/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200206T151548_20200206T151615_020150_02624B_5023/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200206T151548_20200206T151615_020150_02624B_5023-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365694.502556, -3179266.881015, 5852338.639146], + "prePositionTime": "2020-02-06T15:16:02.000000Z", + "postPosition": + [-2419128.98747, -3214228.734775, 5811347.645779], + "postPositionTime": "2020-02-06T15:16:12.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.241758, -3517.954827, -4066.159269], + "preVelocityTime": "2020-02-06T15:16:02.000000", + "postVelocity": [-5332.544695, -3474.355737, -4131.962605], + "postVelocityTime": "2020-02-06T15:16:12.000000", + }, + }, + "ascendingNodeTime": "2020-02-06T14:42:17.485770Z", + "relative_start_time": 2027.3984060287476, + "relative_center_time": 2028.9596011638641, + "relative_end_time": 2030.5207960605621, + "relative_sv_pre_time": 2024.5142300128937, + "relative_sv_post_time": 2034.5142300128937, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200218T151603_VV_6592-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_020325_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 20325, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200218T151603_VV_6592-BURST", + "sensor": "C-SAR", + "startTime": "2020-02-18T15:16:04.590642Z", + "stopTime": "2020-02-18T15:16:07.713032Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200218T151548_20200218T151615_020325_0267EC_6592/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200218T151603_VV_6592-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 43655220, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-02-18T15:16:03.445654", + "azimuthAnxTime": "2026.2458031024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200218T151548_20200218T151615_020325_0267EC_6592/IW3/VV/5.xml", + ], + "temporalBaseline": 552, + "perpendicularBaseline": 44, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709366598-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200218T151603_VV_6592-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:17:44.613Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-02-18T15:16:04.590642Z", + "EndingDateTime": "2020-02-18T15:16:07.713032Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 20325 }], + "GranuleUR": "S1_372326_IW3_20200218T151603_VV_6592-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-02-18T14:42:17.194797Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2458031024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-02-18T15:16:03.445654"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["43655220"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_020325_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419065.766481,-3214321.744615,5811304.83715,2020-02-18T15:16:11.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365630.881842,-3179360.261368,5852296.077377,2020-02-18T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.584916,-3474.318031,-4131.98726,2020-02-18T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.281488,-3517.918444,-4066.183996,2020-02-18T15:16:01.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:17:44Z" }, + { "Type": "Update", "Date": "2023-06-16T01:17:44Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200218T151548_20200218T151615_020325_0267EC_6592/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200218T151548_20200218T151615_020325_0267EC_6592/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200218T151548_20200218T151615_020325_0267EC_6592-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365630.881842, -3179360.261368, 5852296.077377], + "prePositionTime": "2020-02-18T15:16:01.000000Z", + "postPosition": + [-2419065.766481, -3214321.744615, 5811304.83715], + "postPositionTime": "2020-02-18T15:16:11.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.281488, -3517.918444, -4066.183996], + "preVelocityTime": "2020-02-18T15:16:01.000000", + "postVelocity": [-5332.584916, -3474.318031, -4131.98726], + "postVelocityTime": "2020-02-18T15:16:11.000000", + }, + }, + "ascendingNodeTime": "2020-02-18T14:42:17.194797Z", + "relative_start_time": 2027.3958449363708, + "relative_center_time": 2028.9570398330688, + "relative_end_time": 2030.5182349681854, + "relative_sv_pre_time": 2023.805202960968, + "relative_sv_post_time": 2033.805202960968, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200301T151603_VV_24E4-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_020500_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 20500, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200301T151603_VV_24E4-BURST", + "sensor": "C-SAR", + "startTime": "2020-03-01T15:16:04.315419Z", + "stopTime": "2020-03-01T15:16:07.437809Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200301T151548_20200301T151615_020500_026D8B_24E4/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200301T151603_VV_24E4-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 44031108, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-03-01T15:16:03.170417", + "azimuthAnxTime": "2026.2419661024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200301T151548_20200301T151615_020500_026D8B_24E4/IW3/VV/5.xml", + ], + "temporalBaseline": 564, + "perpendicularBaseline": -22, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709391596-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200301T151603_VV_24E4-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:49.083Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-03-01T15:16:04.315419Z", + "EndingDateTime": "2020-03-01T15:16:07.437809Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 20500 }], + "GranuleUR": "S1_372326_IW3_20200301T151603_VV_24E4-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-03-01T14:42:16.923087Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2419661024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-03-01T15:16:03.170417"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["44031108"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_020500_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419045.77532,-3214396.369958,5811261.354293,2020-03-01T15:16:11.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365611.247826,-3179434.623214,5852253.079237,2020-03-01T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.549301,-3474.343928,-4132.03562,2020-03-01T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.24571,-3517.945258,-4066.232599,2020-03-01T15:16:01.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:48Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:48Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200301T151548_20200301T151615_020500_026D8B_24E4/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200301T151548_20200301T151615_020500_026D8B_24E4/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200301T151548_20200301T151615_020500_026D8B_24E4-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365611.247826, -3179434.623214, 5852253.079237], + "prePositionTime": "2020-03-01T15:16:01.000000Z", + "postPosition": + [-2419045.77532, -3214396.369958, 5811261.354293], + "postPositionTime": "2020-03-01T15:16:11.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.24571, -3517.945258, -4066.232599], + "preVelocityTime": "2020-03-01T15:16:01.000000", + "postVelocity": [-5332.549301, -3474.343928, -4132.03562], + "postVelocityTime": "2020-03-01T15:16:11.000000", + }, + }, + "ascendingNodeTime": "2020-03-01T14:42:16.923087Z", + "relative_start_time": 2027.3923320770264, + "relative_center_time": 2028.953527212143, + "relative_end_time": 2030.514722108841, + "relative_sv_pre_time": 2024.0769131183624, + "relative_sv_post_time": 2034.0769131183624, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200313T151603_VV_B3A4-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_020675_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 20675, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200313T151603_VV_B3A4-BURST", + "sensor": "C-SAR", + "startTime": "2020-03-13T15:16:04.505086Z", + "stopTime": "2020-03-13T15:16:07.627476Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200313T151548_20200313T151615_020675_027319_B3A4/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200313T151603_VV_B3A4-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 44406995, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2020-03-13T15:16:03.358029", + "azimuthAnxTime": "2026.2358926587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200313T151548_20200313T151615_020675_027319_B3A4/IW3/VV/5.xml", + ], + "temporalBaseline": 576, + "perpendicularBaseline": 30, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709402863-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200313T151603_VV_B3A4-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:32.385Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-03-13T15:16:04.505086Z", + "EndingDateTime": "2020-03-13T15:16:07.627476Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 20675 }], + "GranuleUR": "S1_372326_IW3_20200313T151603_VV_B3A4-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-03-13T14:42:17.104023Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2358926587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-03-13T15:16:03.358029"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["44406995"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_020675_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419123.946543,-3214350.151303,5811233.133051,2020-03-13T15:16:11.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365688.946162,-3179389.208782,5852225.232903,2020-03-13T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.596001,-3474.263595,-4132.0732,2020-03-13T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.293601,-3517.864749,-4066.270006,2020-03-13T15:16:01.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:32Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:32Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200313T151548_20200313T151615_020675_027319_B3A4/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200313T151548_20200313T151615_020675_027319_B3A4/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200313T151548_20200313T151615_020675_027319_B3A4-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365688.946162, -3179389.208782, 5852225.232903], + "prePositionTime": "2020-03-13T15:16:01.000000Z", + "postPosition": + [-2419123.946543, -3214350.151303, 5811233.133051], + "postPositionTime": "2020-03-13T15:16:11.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.293601, -3517.864749, -4066.270006], + "preVelocityTime": "2020-03-13T15:16:01.000000", + "postVelocity": [-5332.596001, -3474.263595, -4132.0732], + "postVelocityTime": "2020-03-13T15:16:11.000000", + }, + }, + "ascendingNodeTime": "2020-03-13T14:42:17.104023Z", + "relative_start_time": 2027.401062965393, + "relative_center_time": 2028.962257862091, + "relative_end_time": 2030.5234529972076, + "relative_sv_pre_time": 2023.8959770202637, + "relative_sv_post_time": 2033.8959770202637, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200325T151603_VV_E4BD-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_020850_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 20850, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200325T151603_VV_E4BD-BURST", + "sensor": "C-SAR", + "startTime": "2020-03-25T15:16:04.579702Z", + "stopTime": "2020-03-25T15:16:07.702092Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200325T151548_20200325T151615_020850_02789F_E4BD/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200325T151603_VV_E4BD-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 44782882, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-03-25T15:16:03.432660", + "azimuthAnxTime": "2026.2294026587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200325T151548_20200325T151615_020850_02789F_E4BD/IW3/VV/5.xml", + ], + "temporalBaseline": 588, + "perpendicularBaseline": 84, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377952-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200325T151603_VV_E4BD-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:55.418Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-03-25T15:16:04.579702Z", + "EndingDateTime": "2020-03-25T15:16:07.702092Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 20850 }], + "GranuleUR": "S1_372326_IW3_20200325T151603_VV_E4BD-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-03-25T14:42:17.197705Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2294026587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-03-25T15:16:03.432660"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["44782882"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_020850_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419186.677513,-3214284.145901,5811215.636042,2020-03-25T15:16:11.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365752.190541,-3179322.567774,5852208.129114,2020-03-25T15:16:01.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.544223,-3474.327374,-4132.112734,2020-03-25T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.242701,-3517.928058,-4066.309099,2020-03-25T15:16:01.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:55Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:55Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200325T151548_20200325T151615_020850_02789F_E4BD/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200325T151548_20200325T151615_020850_02789F_E4BD/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200325T151548_20200325T151615_020850_02789F_E4BD-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365752.190541, -3179322.567774, 5852208.129114], + "prePositionTime": "2020-03-25T15:16:01.000000Z", + "postPosition": + [-2419186.677513, -3214284.145901, 5811215.636042], + "postPositionTime": "2020-03-25T15:16:11.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.242701, -3517.928058, -4066.309099], + "preVelocityTime": "2020-03-25T15:16:01.000000", + "postVelocity": [-5332.544223, -3474.327374, -4132.112734], + "postVelocityTime": "2020-03-25T15:16:11.000000", + }, + }, + "ascendingNodeTime": "2020-03-25T14:42:17.197705Z", + "relative_start_time": 2027.381996870041, + "relative_center_time": 2028.943191766739, + "relative_end_time": 2030.5043869018555, + "relative_sv_pre_time": 2023.8022949695587, + "relative_sv_post_time": 2033.8022949695587, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200406T151603_VV_9E4A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_021025_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 21025, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200406T151603_VV_9E4A-BURST", + "sensor": "C-SAR", + "startTime": "2020-04-06T15:16:04.974996Z", + "stopTime": "2020-04-06T15:16:08.097386Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200406T151549_20200406T151616_021025_027E27_9E4A/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200406T151603_VV_9E4A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 45158770, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-04-06T15:16:03.836161", + "azimuthAnxTime": "2026.2279808839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200406T151549_20200406T151616_021025_027E27_9E4A/IW3/VV/5.xml", + ], + "temporalBaseline": 600, + "perpendicularBaseline": 118, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709360490-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200406T151603_VV_9E4A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:09.120Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-04-06T15:16:04.974996Z", + "EndingDateTime": "2020-04-06T15:16:08.097386Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 21025 }], + "GranuleUR": "S1_372326_IW3_20200406T151603_VV_9E4A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-04-06T14:42:17.602973Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2279808839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-04-06T15:16:03.836161"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["45158770"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_021025_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419287.638069,-3214270.908423,5811155.406574,2020-04-06T15:16:12.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365853.181255,-3179309.810215,5852148.713709,2020-04-06T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.540475,-3474.27929,-4132.19409,2020-04-06T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.2404,-3517.880143,-4066.390536,2020-04-06T15:16:02.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:08Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:08Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200406T151549_20200406T151616_021025_027E27_9E4A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200406T151549_20200406T151616_021025_027E27_9E4A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200406T151549_20200406T151616_021025_027E27_9E4A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365853.181255, -3179309.810215, 5852148.713709], + "prePositionTime": "2020-04-06T15:16:02.000000Z", + "postPosition": + [-2419287.638069, -3214270.908423, 5811155.406574], + "postPositionTime": "2020-04-06T15:16:12.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.2404, -3517.880143, -4066.390536], + "preVelocityTime": "2020-04-06T15:16:02.000000", + "postVelocity": [-5332.540475, -3474.27929, -4132.19409], + "postVelocityTime": "2020-04-06T15:16:12.000000", + }, + }, + "ascendingNodeTime": "2020-04-06T14:42:17.602973Z", + "relative_start_time": 2027.3720231056213, + "relative_center_time": 2028.9332180023193, + "relative_end_time": 2030.4944128990173, + "relative_sv_pre_time": 2024.397027015686, + "relative_sv_post_time": 2034.397027015686, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200418T151604_VV_A72F-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_021200_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 21200, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200418T151604_VV_A72F-BURST", + "sensor": "C-SAR", + "startTime": "2020-04-18T15:16:05.491277Z", + "stopTime": "2020-04-18T15:16:08.613667Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200418T151549_20200418T151616_021200_0283B0_A72F/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200418T151604_VV_A72F-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 45534657, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-04-18T15:16:04.342163", + "azimuthAnxTime": "2026.2113277713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200418T151549_20200418T151616_021200_0283B0_A72F/IW3/VV/5.xml", + ], + "temporalBaseline": 612, + "perpendicularBaseline": 60, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709373314-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200418T151604_VV_A72F-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:09.957Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-04-18T15:16:05.491277Z", + "EndingDateTime": "2020-04-18T15:16:08.613667Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 21200 }], + "GranuleUR": "S1_372326_IW3_20200418T151604_VV_A72F-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-04-18T14:42:18.125730Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2113277713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-04-18T15:16:04.342163"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["45534657"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_021200_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419274.013533,-3214378.580324,5811129.583375,2020-04-18T15:16:12.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365839.403753,-3179418.134345,5852122.958617,2020-04-18T15:16:02.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.555924,-3474.213632,-4132.200437,2020-04-18T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.255527,-3517.815369,-4066.39781,2020-04-18T15:16:02.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:09Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:09Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200418T151549_20200418T151616_021200_0283B0_A72F/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200418T151549_20200418T151616_021200_0283B0_A72F/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200418T151549_20200418T151616_021200_0283B0_A72F-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365839.403753, -3179418.134345, 5852122.958617], + "prePositionTime": "2020-04-18T15:16:02.000000Z", + "postPosition": + [-2419274.013533, -3214378.580324, 5811129.583375], + "postPositionTime": "2020-04-18T15:16:12.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.255527, -3517.815369, -4066.39781], + "preVelocityTime": "2020-04-18T15:16:02.000000", + "postVelocity": [-5332.555924, -3474.213632, -4132.200437], + "postVelocityTime": "2020-04-18T15:16:12.000000", + }, + }, + "ascendingNodeTime": "2020-04-18T14:42:18.125730Z", + "relative_start_time": 2027.3655469417572, + "relative_center_time": 2028.9267420768738, + "relative_end_time": 2030.4879369735718, + "relative_sv_pre_time": 2023.8742699623108, + "relative_sv_post_time": 2033.8742699623108, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200430T151604_VV_C758-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_021375_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 21375, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200430T151604_VV_C758-BURST", + "sensor": "C-SAR", + "startTime": "2020-04-30T15:16:06.077520Z", + "stopTime": "2020-04-30T15:16:09.199910Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200430T151550_20200430T151617_021375_028934_C758/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200430T151604_VV_C758-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 45910545, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-04-30T15:16:04.918142", + "azimuthAnxTime": "2026.2017741024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200430T151550_20200430T151617_021375_028934_C758/IW3/VV/5.xml", + ], + "temporalBaseline": 624, + "perpendicularBaseline": -26, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709352072-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200430T151604_VV_C758-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:27.537Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-04-30T15:16:06.077520Z", + "EndingDateTime": "2020-04-30T15:16:09.199910Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 21375 }], + "GranuleUR": "S1_372326_IW3_20200430T151604_VV_C758-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-04-30T14:42:18.711141Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2017741024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-04-30T15:16:04.918142"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["45910545"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_021375_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419201.964803,-3214470.148684,5811122.901729,2020-04-30T15:16:13.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365767.07049,-3179510.009982,5852116.104989,2020-04-30T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.584817,-3474.182476,-4132.183048,2020-04-30T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.283523,-3517.785109,-4066.380816,2020-04-30T15:16:03.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:27Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:27Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200430T151550_20200430T151617_021375_028934_C758/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200430T151550_20200430T151617_021375_028934_C758/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200430T151550_20200430T151617_021375_028934_C758-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365767.07049, -3179510.009982, 5852116.104989], + "prePositionTime": "2020-04-30T15:16:03.000000Z", + "postPosition": + [-2419201.964803, -3214470.148684, 5811122.901729], + "postPositionTime": "2020-04-30T15:16:13.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.283523, -3517.785109, -4066.380816], + "preVelocityTime": "2020-04-30T15:16:03.000000", + "postVelocity": [-5332.584817, -3474.182476, -4132.183048], + "postVelocityTime": "2020-04-30T15:16:13.000000", + }, + }, + "ascendingNodeTime": "2020-04-30T14:42:18.711141Z", + "relative_start_time": 2027.3663787841797, + "relative_center_time": 2028.9275736808777, + "relative_end_time": 2030.4887688159943, + "relative_sv_pre_time": 2024.2888588905334, + "relative_sv_post_time": 2034.2888588905334, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200512T151605_VV_51D0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_021550_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 21550, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200512T151605_VV_51D0-BURST", + "sensor": "C-SAR", + "startTime": "2020-05-12T15:16:06.467504Z", + "stopTime": "2020-05-12T15:16:09.589894Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200512T151550_20200512T151617_021550_028EA5_51D0/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200512T151605_VV_51D0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 46286432, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-05-12T15:16:05.320460", + "azimuthAnxTime": "2026.2136565528", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200512T151550_20200512T151617_021550_028EA5_51D0/IW3/VV/5.xml", + ], + "temporalBaseline": 636, + "perpendicularBaseline": -83, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709388747-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200512T151605_VV_51D0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:02.887Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-05-12T15:16:06.467504Z", + "EndingDateTime": "2020-05-12T15:16:09.589894Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 21550 }], + "GranuleUR": "S1_372326_IW3_20200512T151605_VV_51D0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-05-12T14:42:19.101103Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2136565528"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-05-12T15:16:05.320460"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["46286432"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_021550_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419148.418543,-3214524.288259,5811114.320752,2020-05-12T15:16:13.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365714.532798,-3179562.827476,5852107.713131,2020-05-12T15:16:03.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.484353,-3474.314456,-4132.201926,2020-05-12T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.182282,-3517.917555,-4066.399771,2020-05-12T15:16:03.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:02Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:02Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200512T151550_20200512T151617_021550_028EA5_51D0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200512T151550_20200512T151617_021550_028EA5_51D0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200512T151550_20200512T151617_021550_028EA5_51D0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365714.532798, -3179562.827476, 5852107.713131], + "prePositionTime": "2020-05-12T15:16:03.000000Z", + "postPosition": + [-2419148.418543, -3214524.288259, 5811114.320752], + "postPositionTime": "2020-05-12T15:16:13.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.182282, -3517.917555, -4066.399771], + "preVelocityTime": "2020-05-12T15:16:03.000000", + "postVelocity": [-5332.484353, -3474.314456, -4132.201926], + "postVelocityTime": "2020-05-12T15:16:13.000000", + }, + }, + "ascendingNodeTime": "2020-05-12T14:42:19.101103Z", + "relative_start_time": 2027.3664009571075, + "relative_center_time": 2028.9275958538055, + "relative_end_time": 2030.4887909889221, + "relative_sv_pre_time": 2023.898896932602, + "relative_sv_post_time": 2033.898896932602, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200524T151606_VV_60EB-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_021725_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 21725, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200524T151606_VV_60EB-BURST", + "sensor": "C-SAR", + "startTime": "2020-05-24T15:16:07.319280Z", + "stopTime": "2020-05-24T15:16:10.441670Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200524T151551_20200524T151618_021725_0293C5_60EB/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200524T151606_VV_60EB-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 46662319, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-05-24T15:16:06.166053", + "azimuthAnxTime": "2026.2059973276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200524T151551_20200524T151618_021725_0293C5_60EB/IW3/VV/5.xml", + ], + "temporalBaseline": 648, + "perpendicularBaseline": 25, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709377149-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200524T151606_VV_60EB-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:39.392Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-05-24T15:16:07.319280Z", + "EndingDateTime": "2020-05-24T15:16:10.441670Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 21725 }], + "GranuleUR": "S1_372326_IW3_20200524T151606_VV_60EB-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-05-24T14:42:19.954465Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2059973276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-05-24T15:16:06.166053"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["46662319"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_021725_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419264.890766,-3214426.455876,5811109.52488,2020-05-24T15:16:14.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365830.854491,-3179465.510486,5852103.205878,2020-05-24T15:16:04.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.498683,-3474.26339,-4132.230887,2020-05-24T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.198095,-3517.865547,-4066.42855,2020-05-24T15:16:04.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:39Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:39Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200524T151551_20200524T151618_021725_0293C5_60EB/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200524T151551_20200524T151618_021725_0293C5_60EB/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200524T151551_20200524T151618_021725_0293C5_60EB-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365830.854491, -3179465.510486, 5852103.205878], + "prePositionTime": "2020-05-24T15:16:04.000000Z", + "postPosition": + [-2419264.890766, -3214426.455876, 5811109.52488], + "postPositionTime": "2020-05-24T15:16:14.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.198095, -3517.865547, -4066.42855], + "preVelocityTime": "2020-05-24T15:16:04.000000", + "postVelocity": [-5332.498683, -3474.26339, -4132.230887], + "postVelocityTime": "2020-05-24T15:16:14.000000", + }, + }, + "ascendingNodeTime": "2020-05-24T14:42:19.954465Z", + "relative_start_time": 2027.3648149967194, + "relative_center_time": 2028.926010131836, + "relative_end_time": 2030.487205028534, + "relative_sv_pre_time": 2024.0455350875854, + "relative_sv_post_time": 2034.0455350875854, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200605T151606_VV_F135-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_021900_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 21900, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200605T151606_VV_F135-BURST", + "sensor": "C-SAR", + "startTime": "2020-06-05T15:16:08.133260Z", + "stopTime": "2020-06-05T15:16:11.255650Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200605T151552_20200605T151619_021900_029906_F135/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200605T151606_VV_F135-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 47038207, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-06-05T15:16:06.973881", + "azimuthAnxTime": "2026.1967806587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200605T151552_20200605T151619_021900_029906_F135/IW3/VV/5.xml", + ], + "temporalBaseline": 660, + "perpendicularBaseline": 112, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709350607-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200605T151606_VV_F135-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:05.737Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-06-05T15:16:08.133260Z", + "EndingDateTime": "2020-06-05T15:16:11.255650Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 21900 }], + "GranuleUR": "S1_372326_IW3_20200605T151606_VV_F135-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-06-05T14:42:20.772308Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.1967806587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-06-05T15:16:06.973881"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["47038207"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_021900_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419352.295236,-3214353.63835,5811113.678864,2020-06-05T15:16:15.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365918.595328,-3179392.554528,5852107.521964,2020-06-05T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.464574,-3474.277668,-4132.24712,2020-06-05T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.164948,-3517.87895,-4066.444741,2020-06-05T15:16:05.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:05Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:05Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200605T151552_20200605T151619_021900_029906_F135/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200605T151552_20200605T151619_021900_029906_F135/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200605T151552_20200605T151619_021900_029906_F135-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365918.595328, -3179392.554528, 5852107.521964], + "prePositionTime": "2020-06-05T15:16:05.000000Z", + "postPosition": + [-2419352.295236, -3214353.63835, 5811113.678864], + "postPositionTime": "2020-06-05T15:16:15.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.164948, -3517.87895, -4066.444741], + "preVelocityTime": "2020-06-05T15:16:05.000000", + "postVelocity": [-5332.464574, -3474.277668, -4132.24712], + "postVelocityTime": "2020-06-05T15:16:15.000000", + }, + }, + "ascendingNodeTime": "2020-06-05T14:42:20.772308Z", + "relative_start_time": 2027.3609519004822, + "relative_center_time": 2028.9221470355988, + "relative_end_time": 2030.4833419322968, + "relative_sv_pre_time": 2024.2276918888092, + "relative_sv_post_time": 2034.2276918888092, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200617T151607_VV_EA38-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_022075_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 22075, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200617T151607_VV_EA38-BURST", + "sensor": "C-SAR", + "startTime": "2020-06-17T15:16:08.646779Z", + "stopTime": "2020-06-17T15:16:11.769169Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200617T151552_20200617T151619_022075_029E50_EA38/IW3/VV/5.tiff", + "pgeVersion": "003.20", + "fileName": "S1_372326_IW3_20200617T151607_VV_EA38-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 47414094, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-06-17T15:16:07.489440", + "azimuthAnxTime": "2026.204055215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200617T151552_20200617T151619_022075_029E50_EA38/IW3/VV/5.xml", + ], + "temporalBaseline": 672, + "perpendicularBaseline": 80, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709351994-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200617T151607_VV_EA38-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:29.982Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-06-17T15:16:08.646779Z", + "EndingDateTime": "2020-06-17T15:16:11.769169Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 22075 }], + "GranuleUR": "S1_372326_IW3_20200617T151607_VV_EA38-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-06-17T14:42:21.280185Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.204055215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-06-17T15:16:07.489440"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["47414094"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_022075_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419271.36502,-3214344.96814,5811144.772253,2020-06-17T15:16:15.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365837.523815,-3179383.416685,5852138.142979,2020-06-17T15:16:05.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.47915,-3474.324412,-4132.200128,2020-06-17T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.178608,-3517.9257,-4066.397235,2020-06-17T15:16:05.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:29Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:29Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.20" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200617T151552_20200617T151619_022075_029E50_EA38/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200617T151552_20200617T151619_022075_029E50_EA38/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200617T151552_20200617T151619_022075_029E50_EA38-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365837.523815, -3179383.416685, 5852138.142979], + "prePositionTime": "2020-06-17T15:16:05.000000Z", + "postPosition": + [-2419271.36502, -3214344.96814, 5811144.772253], + "postPositionTime": "2020-06-17T15:16:15.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.178608, -3517.9257, -4066.397235], + "preVelocityTime": "2020-06-17T15:16:05.000000", + "postVelocity": [-5332.47915, -3474.324412, -4132.200128], + "postVelocityTime": "2020-06-17T15:16:15.000000", + }, + }, + "ascendingNodeTime": "2020-06-17T14:42:21.280185Z", + "relative_start_time": 2027.3665940761566, + "relative_center_time": 2028.9277889728546, + "relative_end_time": 2030.4889841079712, + "relative_sv_pre_time": 2023.7198150157928, + "relative_sv_post_time": 2033.7198150157928, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200629T151608_VV_EF74-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_022250_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 22250, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200629T151608_VV_EF74-BURST", + "sensor": "C-SAR", + "startTime": "2020-06-29T15:16:09.319783Z", + "stopTime": "2020-06-29T15:16:12.442173Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200629T151553_20200629T151620_022250_02A3AC_EF74/IW3/VV/5.tiff", + "pgeVersion": "003.30", + "fileName": "S1_372326_IW3_20200629T151608_VV_EF74-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 47789981, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-06-29T15:16:08.176833", + "azimuthAnxTime": "2026.2201269965", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200629T151553_20200629T151620_022250_02A3AC_EF74/IW3/VV/5.xml", + ], + "temporalBaseline": 684, + "perpendicularBaseline": -18, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709351206-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200629T151608_VV_EF74-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:33.511Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-06-29T15:16:09.319783Z", + "EndingDateTime": "2020-06-29T15:16:12.442173Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 22250 }], + "GranuleUR": "S1_372326_IW3_20200629T151608_VV_EF74-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-06-29T14:42:21.951183Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2201269965"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-06-29T15:16:08.176833"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["47789981"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_022250_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419190.257182,-3214435.62709,5811128.016686,2020-06-29T15:16:16.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365756.004213,-3179474.417922,5852121.329577,2020-06-29T15:16:06.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.520748,-3474.28964,-4132.19425,2020-06-29T15:16:16.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.219343,-3517.89201,-4066.391534,2020-06-29T15:16:06.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:33Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:33Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.30" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200629T151553_20200629T151620_022250_02A3AC_EF74/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200629T151553_20200629T151620_022250_02A3AC_EF74/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200629T151553_20200629T151620_022250_02A3AC_EF74-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365756.004213, -3179474.417922, 5852121.329577], + "prePositionTime": "2020-06-29T15:16:06.000000Z", + "postPosition": + [-2419190.257182, -3214435.62709, 5811128.016686], + "postPositionTime": "2020-06-29T15:16:16.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.219343, -3517.89201, -4066.391534], + "preVelocityTime": "2020-06-29T15:16:06.000000", + "postVelocity": [-5332.520748, -3474.28964, -4132.19425], + "postVelocityTime": "2020-06-29T15:16:16.000000", + }, + }, + "ascendingNodeTime": "2020-06-29T14:42:21.951183Z", + "relative_start_time": 2027.3685998916626, + "relative_center_time": 2028.9297950267792, + "relative_end_time": 2030.4909899234772, + "relative_sv_pre_time": 2024.0488169193268, + "relative_sv_post_time": 2034.0488169193268, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200711T151608_VV_13E0-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_022425_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 22425, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200711T151608_VV_13E0-BURST", + "sensor": "C-SAR", + "startTime": "2020-07-11T15:16:10.093374Z", + "stopTime": "2020-07-11T15:16:13.215764Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200711T151554_20200711T151621_022425_02A8FE_13E0/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200711T151608_VV_13E0-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 48165869, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-07-11T15:16:08.948384", + "azimuthAnxTime": "2026.2195124402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200711T151554_20200711T151621_022425_02A8FE_13E0/IW3/VV/5.xml", + ], + "temporalBaseline": 696, + "perpendicularBaseline": -18, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709379598-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200711T151608_VV_13E0-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:55.558Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-07-11T15:16:10.093374Z", + "EndingDateTime": "2020-07-11T15:16:13.215764Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 22425 }], + "GranuleUR": "S1_372326_IW3_20200711T151608_VV_13E0-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-07-11T14:42:22.724027Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2195124402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-07-11T15:16:08.948384"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["48165869"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_022425_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419203.013891,-3214434.774088,5811115.464865,2020-07-11T15:16:17.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365768.603906,-3179473.82379,5852108.937676,2020-07-11T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.53631,-3474.263706,-4132.210261,2020-07-11T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.235156,-3517.866195,-4066.407509,2020-07-11T15:16:07.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:55Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:55Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200711T151554_20200711T151621_022425_02A8FE_13E0/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200711T151554_20200711T151621_022425_02A8FE_13E0/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200711T151554_20200711T151621_022425_02A8FE_13E0-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365768.603906, -3179473.82379, 5852108.937676], + "prePositionTime": "2020-07-11T15:16:07.000000Z", + "postPosition": + [-2419203.013891, -3214434.774088, 5811115.464865], + "postPositionTime": "2020-07-11T15:16:17.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.235156, -3517.866195, -4066.407509], + "preVelocityTime": "2020-07-11T15:16:07.000000", + "postVelocity": [-5332.53631, -3474.263706, -4132.210261], + "postVelocityTime": "2020-07-11T15:16:17.000000", + }, + }, + "ascendingNodeTime": "2020-07-11T14:42:22.724027Z", + "relative_start_time": 2027.3693470954895, + "relative_center_time": 2028.930542230606, + "relative_end_time": 2030.491737127304, + "relative_sv_pre_time": 2024.2759730815887, + "relative_sv_post_time": 2034.2759730815887, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200723T151609_VV_D9A2-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_022600_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 22600, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200723T151609_VV_D9A2-BURST", + "sensor": "C-SAR", + "startTime": "2020-07-23T15:16:10.737035Z", + "stopTime": "2020-07-23T15:16:13.859425Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200723T151554_20200723T151621_022600_02AE4E_D9A2/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200723T151609_VV_D9A2-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 48541756, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-07-23T15:16:09.577657", + "azimuthAnxTime": "2026.1986845461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200723T151554_20200723T151621_022600_02AE4E_D9A2/IW3/VV/5.xml", + ], + "temporalBaseline": 708, + "perpendicularBaseline": 64, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709374786-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200723T151609_VV_D9A2-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:17.212Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-07-23T15:16:10.737035Z", + "EndingDateTime": "2020-07-23T15:16:13.859425Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 22600 }], + "GranuleUR": "S1_372326_IW3_20200723T151609_VV_D9A2-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-07-23T14:42:23.370285Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.1986845461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-07-23T15:16:09.577657"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["48541756"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_022600_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419307.528041,-3214404.117136,5811108.655083,2020-07-23T15:16:17.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365874.156479,-3179442.598094,5852102.530587,2020-07-23T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.432012,-3474.320969,-4132.250279,2020-07-23T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.131775,-3517.922719,-4066.448051,2020-07-23T15:16:07.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:16Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:16Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200723T151554_20200723T151621_022600_02AE4E_D9A2/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200723T151554_20200723T151621_022600_02AE4E_D9A2/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200723T151554_20200723T151621_022600_02AE4E_D9A2-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365874.156479, -3179442.598094, 5852102.530587], + "prePositionTime": "2020-07-23T15:16:07.000000Z", + "postPosition": + [-2419307.528041, -3214404.117136, 5811108.655083], + "postPositionTime": "2020-07-23T15:16:17.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.131775, -3517.922719, -4066.448051], + "preVelocityTime": "2020-07-23T15:16:07.000000", + "postVelocity": [-5332.432012, -3474.320969, -4132.250279], + "postVelocityTime": "2020-07-23T15:16:17.000000", + }, + }, + "ascendingNodeTime": "2020-07-23T14:42:23.370285Z", + "relative_start_time": 2027.3667500019073, + "relative_center_time": 2028.927945137024, + "relative_end_time": 2030.489140033722, + "relative_sv_pre_time": 2023.6297149658203, + "relative_sv_post_time": 2033.6297149658203, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200804T151610_VV_1E0D-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_022775_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 22775, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200804T151610_VV_1E0D-BURST", + "sensor": "C-SAR", + "startTime": "2020-08-04T15:16:11.611821Z", + "stopTime": "2020-08-04T15:16:14.734211Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200804T151555_20200804T151622_022775_02B39B_1E0D/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200804T151610_VV_1E0D-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 48917644, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-08-04T15:16:10.452428", + "azimuthAnxTime": "2026.2033585461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200804T151555_20200804T151622_022775_02B39B_1E0D/IW3/VV/5.xml", + ], + "temporalBaseline": 720, + "perpendicularBaseline": 108, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709363031-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200804T151610_VV_1E0D-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:41.641Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-08-04T15:16:11.611821Z", + "EndingDateTime": "2020-08-04T15:16:14.734211Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 22775 }], + "GranuleUR": "S1_372326_IW3_20200804T151610_VV_1E0D-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-08-04T14:42:24.243897Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2033585461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-08-04T15:16:10.452428"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["48917644"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_022775_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419311.243663,-3214331.610232,5811139.659633,2020-08-04T15:16:18.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365877.065882,-3179370.711422,5852133.10694,2020-08-04T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.512541,-3474.25925,-4132.207721,2020-08-04T15:16:18.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.212506,-3517.860397,-4066.40498,2020-08-04T15:16:08.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:41Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:41Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200804T151555_20200804T151622_022775_02B39B_1E0D/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200804T151555_20200804T151622_022775_02B39B_1E0D/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200804T151555_20200804T151622_022775_02B39B_1E0D-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365877.065882, -3179370.711422, 5852133.10694], + "prePositionTime": "2020-08-04T15:16:08.000000Z", + "postPosition": + [-2419311.243663, -3214331.610232, 5811139.659633], + "postPositionTime": "2020-08-04T15:16:18.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.212506, -3517.860397, -4066.40498], + "preVelocityTime": "2020-08-04T15:16:08.000000", + "postVelocity": [-5332.512541, -3474.25925, -4132.207721], + "postVelocityTime": "2020-08-04T15:16:18.000000", + }, + }, + "ascendingNodeTime": "2020-08-04T14:42:24.243897Z", + "relative_start_time": 2027.3679239749908, + "relative_center_time": 2028.9291191101074, + "relative_end_time": 2030.4903140068054, + "relative_sv_pre_time": 2023.7561030387878, + "relative_sv_post_time": 2033.7561030387878, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200816T151611_VV_F007-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_022950_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 22950, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200816T151611_VV_F007-BURST", + "sensor": "C-SAR", + "startTime": "2020-08-16T15:16:12.234304Z", + "stopTime": "2020-08-16T15:16:15.356694Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200816T151556_20200816T151623_022950_02B908_F007/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200816T151611_VV_F007-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 49293531, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-08-16T15:16:11.089299", + "azimuthAnxTime": "2026.2202668839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200816T151556_20200816T151623_022950_02B908_F007/IW3/VV/5.xml", + ], + "temporalBaseline": 732, + "perpendicularBaseline": 18, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709353332-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200816T151611_VV_F007-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:15.934Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-08-16T15:16:12.234304Z", + "EndingDateTime": "2020-08-16T15:16:15.356694Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 22950 }], + "GranuleUR": "S1_372326_IW3_20200816T151611_VV_F007-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-08-16T14:42:24.863425Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2202668839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-08-16T15:16:11.089299"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["49293531"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_022950_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419223.067502,-3214395.410789,5811129.911977,2020-08-16T15:16:19.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365788.427822,-3179434.680138,5852123.226584,2020-08-16T15:16:09.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.559178,-3474.241969,-4132.194526,2020-08-16T15:16:19.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.258282,-3517.844028,-4066.391641,2020-08-16T15:16:09.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:15Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:15Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200816T151556_20200816T151623_022950_02B908_F007/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200816T151556_20200816T151623_022950_02B908_F007/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200816T151556_20200816T151623_022950_02B908_F007-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365788.427822, -3179434.680138, 5852123.226584], + "prePositionTime": "2020-08-16T15:16:09.000000Z", + "postPosition": + [-2419223.067502, -3214395.410789, 5811129.911977], + "postPositionTime": "2020-08-16T15:16:19.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.258282, -3517.844028, -4066.391641], + "preVelocityTime": "2020-08-16T15:16:09.000000", + "postVelocity": [-5332.559178, -3474.241969, -4132.194526], + "postVelocityTime": "2020-08-16T15:16:19.000000", + }, + }, + "ascendingNodeTime": "2020-08-16T14:42:24.863425Z", + "relative_start_time": 2027.3708789348602, + "relative_center_time": 2028.9320738315582, + "relative_end_time": 2030.4932689666748, + "relative_sv_pre_time": 2024.1365749835968, + "relative_sv_post_time": 2034.1365749835968, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200828T151611_VV_F593-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_023125_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 23125, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200828T151611_VV_F593-BURST", + "sensor": "C-SAR", + "startTime": "2020-08-28T15:16:13.064153Z", + "stopTime": "2020-08-28T15:16:16.186543Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200828T151557_20200828T151624_023125_02BE8A_F593/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200828T151611_VV_F593-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 49669418, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-08-28T15:16:11.921205", + "azimuthAnxTime": "2026.2191944402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200828T151557_20200828T151624_023125_02BE8A_F593/IW3/VV/5.xml", + ], + "temporalBaseline": 744, + "perpendicularBaseline": 32, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709356849-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200828T151611_VV_F593-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:33.466Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-08-28T15:16:13.064153Z", + "EndingDateTime": "2020-08-28T15:16:16.186543Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 23125 }], + "GranuleUR": "S1_372326_IW3_20200828T151611_VV_F593-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-08-28T14:42:25.795020Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2191944402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-08-28T15:16:11.921205"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["49669418"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_023125_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419262.325152,-3214407.1787,5811115.879079,2020-08-28T15:16:20.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365827.170395,-3179447.405066,5852109.257902,2020-08-28T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.610439,-3474.146207,-4132.200764,2020-08-28T15:16:20.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.310032,-3517.74837,-4066.398234,2020-08-28T15:16:10.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:33Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:33Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200828T151557_20200828T151624_023125_02BE8A_F593/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200828T151557_20200828T151624_023125_02BE8A_F593/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200828T151557_20200828T151624_023125_02BE8A_F593-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365827.170395, -3179447.405066, 5852109.257902], + "prePositionTime": "2020-08-28T15:16:10.000000Z", + "postPosition": + [-2419262.325152, -3214407.1787, 5811115.879079], + "postPositionTime": "2020-08-28T15:16:20.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.310032, -3517.74837, -4066.398234], + "preVelocityTime": "2020-08-28T15:16:10.000000", + "postVelocity": [-5332.610439, -3474.146207, -4132.200764], + "postVelocityTime": "2020-08-28T15:16:20.000000", + }, + }, + "ascendingNodeTime": "2020-08-28T14:42:25.795020Z", + "relative_start_time": 2027.2691328525543, + "relative_center_time": 2028.830327987671, + "relative_end_time": 2030.391522884369, + "relative_sv_pre_time": 2024.2049798965454, + "relative_sv_post_time": 2034.2049798965454, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200909T151612_VV_1EAD-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_023300_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 23300, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200909T151612_VV_1EAD-BURST", + "sensor": "C-SAR", + "startTime": "2020-09-09T15:16:13.506566Z", + "stopTime": "2020-09-09T15:16:16.628956Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200909T151557_20200909T151624_023300_02C408_1EAD/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200909T151612_VV_1EAD-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 50045306, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-09-09T15:16:12.359509", + "azimuthAnxTime": "2026.2170716587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200909T151557_20200909T151624_023300_02C408_1EAD/IW3/VV/5.xml", + ], + "temporalBaseline": 756, + "perpendicularBaseline": 34, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709371821-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200909T151612_VV_1EAD-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:32.253Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-09-09T15:16:13.506566Z", + "EndingDateTime": "2020-09-09T15:16:16.628956Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 23300 }], + "GranuleUR": "S1_372326_IW3_20200909T151612_VV_1EAD-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-09-09T14:42:26.137064Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2170716587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-09-09T15:16:12.359509"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["50045306"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_023300_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419248.045311,-3214421.177448,5811139.178853,2020-09-09T15:16:20.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365812.988992,-3179461.361777,5852132.267314,2020-09-09T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.600785,-3474.150481,-4132.171558,2020-09-09T15:16:20.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.299968,-3517.752481,-4066.369341,2020-09-09T15:16:10.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:32Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:32Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200909T151557_20200909T151624_023300_02C408_1EAD/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200909T151557_20200909T151624_023300_02C408_1EAD/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200909T151557_20200909T151624_023300_02C408_1EAD-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365812.988992, -3179461.361777, 5852132.267314], + "prePositionTime": "2020-09-09T15:16:10.000000Z", + "postPosition": + [-2419248.045311, -3214421.177448, 5811139.178853], + "postPositionTime": "2020-09-09T15:16:20.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.299968, -3517.752481, -4066.369341], + "preVelocityTime": "2020-09-09T15:16:10.000000", + "postVelocity": [-5332.600785, -3474.150481, -4132.171558], + "postVelocityTime": "2020-09-09T15:16:20.000000", + }, + }, + "ascendingNodeTime": "2020-09-09T14:42:26.137064Z", + "relative_start_time": 2027.369502067566, + "relative_center_time": 2028.930696964264, + "relative_end_time": 2030.4918920993805, + "relative_sv_pre_time": 2023.8629360198975, + "relative_sv_post_time": 2033.8629360198975, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20200921T151612_VV_EEDF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_023475_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 23475, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20200921T151612_VV_EEDF-BURST", + "sensor": "C-SAR", + "startTime": "2020-09-21T15:16:13.853322Z", + "stopTime": "2020-09-21T15:16:16.975712Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200921T151557_20200921T151624_023475_02C983_EEDF/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20200921T151612_VV_EEDF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 50421193, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-09-21T15:16:12.702170", + "azimuthAnxTime": "2026.2182655461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200921T151557_20200921T151624_023475_02C983_EEDF/IW3/VV/5.xml", + ], + "temporalBaseline": 768, + "perpendicularBaseline": 45, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709365841-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20200921T151612_VV_EEDF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:15.006Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-09-21T15:16:13.853322Z", + "EndingDateTime": "2020-09-21T15:16:16.975712Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 23475 }], + "GranuleUR": "S1_372326_IW3_20200921T151612_VV_EEDF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-09-21T14:42:26.478587Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2182655461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-09-21T15:16:12.702170"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["50421193"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_023475_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419223.066965,-3214390.533026,5811173.368572,2020-09-21T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365788.415285,-3179429.973043,5852166.167683,2020-09-21T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.560543,-3474.22515,-4132.142731,2020-09-21T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.259272,-3517.826661,-4066.340289,2020-09-21T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:14Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:14Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200921T151557_20200921T151624_023475_02C983_EEDF/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20200921T151557_20200921T151624_023475_02C983_EEDF/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20200921T151557_20200921T151624_023475_02C983_EEDF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365788.415285, -3179429.973043, 5852166.167683], + "prePositionTime": "2020-09-21T15:16:11.000000Z", + "postPosition": + [-2419223.066965, -3214390.533026, 5811173.368572], + "postPositionTime": "2020-09-21T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.259272, -3517.826661, -4066.340289], + "preVelocityTime": "2020-09-21T15:16:11.000000", + "postVelocity": [-5332.560543, -3474.22515, -4132.142731], + "postVelocityTime": "2020-09-21T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2020-09-21T14:42:26.478587Z", + "relative_start_time": 2027.3747351169586, + "relative_center_time": 2028.9359300136566, + "relative_end_time": 2030.4971251487732, + "relative_sv_pre_time": 2024.5214130878448, + "relative_sv_post_time": 2034.5214130878448, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201003T151612_VV_DE89-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_023650_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 23650, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201003T151612_VV_DE89-BURST", + "sensor": "C-SAR", + "startTime": "2020-10-03T15:16:14.059850Z", + "stopTime": "2020-10-03T15:16:17.182240Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201003T151558_20201003T151625_023650_02CEFB_DE89/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201003T151612_VV_DE89-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 50797081, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2020-10-03T15:16:12.914848", + "azimuthAnxTime": "2026.2334721024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201003T151558_20201003T151625_023650_02CEFB_DE89/IW3/VV/5.xml", + ], + "temporalBaseline": 780, + "perpendicularBaseline": 73, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709363701-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201003T151612_VV_DE89-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:45.301Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-10-03T15:16:14.059850Z", + "EndingDateTime": "2020-10-03T15:16:17.182240Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 23650 }], + "GranuleUR": "S1_372326_IW3_20201003T151612_VV_DE89-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-10-03T14:42:26.675668Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2334721024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-10-03T15:16:12.914848"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["50797081"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_023650_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419185.795883,-3214343.400611,5811230.942188,2020-10-03T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365751.78272,-3179381.718585,5852223.258074,2020-10-03T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.497045,-3474.337789,-4132.094554,2020-10-03T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.195055,-3517.93847,-4066.29184,2020-10-03T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:45Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:45Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201003T151558_20201003T151625_023650_02CEFB_DE89/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201003T151558_20201003T151625_023650_02CEFB_DE89/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201003T151558_20201003T151625_023650_02CEFB_DE89-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365751.78272, -3179381.718585, 5852223.258074], + "prePositionTime": "2020-10-03T15:16:11.000000Z", + "postPosition": + [-2419185.795883, -3214343.400611, 5811230.942188], + "postPositionTime": "2020-10-03T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.195055, -3517.93847, -4066.29184], + "preVelocityTime": "2020-10-03T15:16:11.000000", + "postVelocity": [-5332.497045, -3474.337789, -4132.094554], + "postVelocityTime": "2020-10-03T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2020-10-03T14:42:26.675668Z", + "relative_start_time": 2027.3841819763184, + "relative_center_time": 2028.945377111435, + "relative_end_time": 2030.506572008133, + "relative_sv_pre_time": 2024.324331998825, + "relative_sv_post_time": 2034.324331998825, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201015T151613_VV_95EC-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_023825_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 23825, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201015T151613_VV_95EC-BURST", + "sensor": "C-SAR", + "startTime": "2020-10-15T15:16:14.204870Z", + "stopTime": "2020-10-15T15:16:17.327260Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201015T151558_20201015T151625_023825_02D46B_95EC/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201015T151613_VV_95EC-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 51172968, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-10-15T15:16:13.059867", + "azimuthAnxTime": "2026.2416326587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201015T151558_20201015T151625_023825_02D46B_95EC/IW3/VV/5.xml", + ], + "temporalBaseline": 792, + "perpendicularBaseline": 63, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709390110-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201015T151613_VV_95EC-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:46.717Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-10-15T15:16:14.204870Z", + "EndingDateTime": "2020-10-15T15:16:17.327260Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 23825 }], + "GranuleUR": "S1_372326_IW3_20201015T151613_VV_95EC-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-10-15T14:42:26.812927Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2416326587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-10-15T15:16:13.059867"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["51172968"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_023825_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419104.909897,-3214317.839141,5811290.074183,2020-10-15T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365670.96726,-3179355.447738,5852281.659633,2020-10-15T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.490561,-3474.40896,-4132.021721,2020-10-15T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.187459,-3518.009187,-4066.218608,2020-10-15T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:46Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:46Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201015T151558_20201015T151625_023825_02D46B_95EC/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201015T151558_20201015T151625_023825_02D46B_95EC/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201015T151558_20201015T151625_023825_02D46B_95EC-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365670.96726, -3179355.447738, 5852281.659633], + "prePositionTime": "2020-10-15T15:16:11.000000Z", + "postPosition": + [-2419104.909897, -3214317.839141, 5811290.074183], + "postPositionTime": "2020-10-15T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.187459, -3518.009187, -4066.218608], + "preVelocityTime": "2020-10-15T15:16:11.000000", + "postVelocity": [-5332.490561, -3474.40896, -4132.021721], + "postVelocityTime": "2020-10-15T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2020-10-15T14:42:26.812927Z", + "relative_start_time": 2027.3919429779053, + "relative_center_time": 2028.9531381130219, + "relative_end_time": 2030.5143330097198, + "relative_sv_pre_time": 2024.1870729923248, + "relative_sv_post_time": 2034.1870729923248, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201027T151613_VV_F697-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_024000_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 24000, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201027T151613_VV_F697-BURST", + "sensor": "C-SAR", + "startTime": "2020-10-27T15:16:14.233587Z", + "stopTime": "2020-10-27T15:16:17.355977Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201027T151558_20201027T151625_024000_02D9EB_F697/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201027T151613_VV_F697-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 51548855, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-10-27T15:16:13.086528", + "azimuthAnxTime": "2026.243749215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201027T151558_20201027T151625_024000_02D9EB_F697/IW3/VV/5.xml", + ], + "temporalBaseline": 804, + "perpendicularBaseline": 28, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709372288-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201027T151613_VV_F697-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:49.574Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-10-27T15:16:14.233587Z", + "EndingDateTime": "2020-10-27T15:16:17.355977Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24000 }], + "GranuleUR": "S1_372326_IW3_20201027T151613_VV_F697-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-10-27T14:42:26.836993Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.243749215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-10-27T15:16:13.086528"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["51548855"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_024000_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419068.357885,-3214355.682064,5811295.3069,2020-10-27T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365634.099661,-3179393.664414,5852286.738904,2020-10-27T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.522359,-3474.371416,-4132.006281,2020-10-27T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.218793,-3517.971975,-4066.203362,2020-10-27T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:49Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:49Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201027T151558_20201027T151625_024000_02D9EB_F697/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201027T151558_20201027T151625_024000_02D9EB_F697/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201027T151558_20201027T151625_024000_02D9EB_F697-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365634.099661, -3179393.664414, 5852286.738904], + "prePositionTime": "2020-10-27T15:16:11.000000Z", + "postPosition": + [-2419068.357885, -3214355.682064, 5811295.3069], + "postPositionTime": "2020-10-27T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.218793, -3517.971975, -4066.203362], + "preVelocityTime": "2020-10-27T15:16:11.000000", + "postVelocity": [-5332.522359, -3474.371416, -4132.006281], + "postVelocityTime": "2020-10-27T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2020-10-27T14:42:26.836993Z", + "relative_start_time": 2027.3965940475464, + "relative_center_time": 2028.957789182663, + "relative_end_time": 2030.518984079361, + "relative_sv_pre_time": 2024.1630070209503, + "relative_sv_post_time": 2034.1630070209503, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147221480, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201108T151613_VV_9532-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_024175_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 24175, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201108T151613_VV_9532-BURST", + "sensor": "C-SAR", + "startTime": "2020-11-08T15:16:14.164769Z", + "stopTime": "2020-11-08T15:16:17.287159Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201108T151558_20201108T151625_024175_02DF51_9532/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201108T151613_VV_9532-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 51924743, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24230, + "subswath": "IW3", + "azimuthTime": "2020-11-08T15:16:13.017710", + "azimuthAnxTime": "2026.2478095461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201108T151558_20201108T151625_024175_02DF51_9532/IW3/VV/5.xml", + ], + "temporalBaseline": 816, + "perpendicularBaseline": 44, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709379101-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201108T151613_VV_9532-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:51.347Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-11-08T15:16:14.164769Z", + "EndingDateTime": "2020-11-08T15:16:17.287159Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24175 }], + "GranuleUR": "S1_372326_IW3_20201108T151613_VV_9532-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-11-08T14:42:26.764456Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2478095461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-11-08T15:16:13.017710"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["51924743"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147221480"] }, + { "Name": "BYTE_OFFSET", "Values": ["736217083"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_024175_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24230"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419053.410467,-3214326.609163,5811324.747791,2020-11-08T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365618.251452,-3179365.458127,5852315.677571,2020-11-08T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.612509,-3474.284875,-4131.956133,2020-11-08T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.308818,-3517.885155,-4066.153052,2020-11-08T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:51Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:51Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201108T151558_20201108T151625_024175_02DF51_9532/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201108T151558_20201108T151625_024175_02DF51_9532/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201108T151558_20201108T151625_024175_02DF51_9532-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365618.251452, -3179365.458127, 5852315.677571], + "prePositionTime": "2020-11-08T15:16:11.000000Z", + "postPosition": + [-2419053.410467, -3214326.609163, 5811324.747791], + "postPositionTime": "2020-11-08T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.308818, -3517.885155, -4066.153052], + "preVelocityTime": "2020-11-08T15:16:11.000000", + "postVelocity": [-5332.612509, -3474.284875, -4131.956133], + "postVelocityTime": "2020-11-08T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2020-11-08T14:42:26.764456Z", + "relative_start_time": 2027.4003129005432, + "relative_center_time": 2028.9615080356598, + "relative_end_time": 2030.5227029323578, + "relative_sv_pre_time": 2024.2355439662933, + "relative_sv_post_time": 2034.2355439662933, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201120T151612_VV_D116-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_024350_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 24350, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201120T151612_VV_D116-BURST", + "sensor": "C-SAR", + "startTime": "2020-11-20T15:16:13.959646Z", + "stopTime": "2020-11-20T15:16:17.082036Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201120T151558_20201120T151625_024350_02E4D0_D116/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201120T151612_VV_D116-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 52300630, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-11-20T15:16:12.806420", + "azimuthAnxTime": "2026.2436169898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201120T151558_20201120T151625_024350_02E4D0_D116/IW3/VV/5.xml", + ], + "temporalBaseline": 828, + "perpendicularBaseline": 57, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709362915-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201120T151612_VV_D116-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:13.833Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-11-20T15:16:13.959646Z", + "EndingDateTime": "2020-11-20T15:16:17.082036Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24350 }], + "GranuleUR": "S1_372326_IW3_20201120T151612_VV_D116-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-11-20T14:42:26.557885Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2436169898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-11-20T15:16:12.806420"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["52300630"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_024350_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419052.333137,-3214312.156128,5811340.291662,2020-11-20T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365616.893084,-3179351.296952,5852331.002326,2020-11-20T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.640629,-3474.255784,-4131.934221,2020-11-20T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.336897,-3517.855861,-4066.131131,2020-11-20T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:13Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:13Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201120T151558_20201120T151625_024350_02E4D0_D116/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201120T151558_20201120T151625_024350_02E4D0_D116/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201120T151558_20201120T151625_024350_02E4D0_D116-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365616.893084, -3179351.296952, 5852331.002326], + "prePositionTime": "2020-11-20T15:16:11.000000Z", + "postPosition": + [-2419052.333137, -3214312.156128, 5811340.291662], + "postPositionTime": "2020-11-20T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.336897, -3517.855861, -4066.131131], + "preVelocityTime": "2020-11-20T15:16:11.000000", + "postVelocity": [-5332.640629, -3474.255784, -4131.934221], + "postVelocityTime": "2020-11-20T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2020-11-20T14:42:26.557885Z", + "relative_start_time": 2027.4017610549927, + "relative_center_time": 2028.9629561901093, + "relative_end_time": 2030.5241510868073, + "relative_sv_pre_time": 2024.4421150684357, + "relative_sv_post_time": 2034.4421150684357, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201202T151612_VV_33A1-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_024525_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 24525, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201202T151612_VV_33A1-BURST", + "sensor": "C-SAR", + "startTime": "2020-12-02T15:16:13.508565Z", + "stopTime": "2020-12-02T15:16:16.630955Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201202T151557_20201202T151624_024525_02EA5C_33A1/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201202T151612_VV_33A1-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 52676517, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-12-02T15:16:12.353283", + "azimuthAnxTime": "2026.2439265461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201202T151557_20201202T151624_024525_02EA5C_33A1/IW3/VV/5.xml", + ], + "temporalBaseline": 840, + "perpendicularBaseline": 150, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709364970-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201202T151612_VV_33A1-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:04.262Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-12-02T15:16:13.508565Z", + "EndingDateTime": "2020-12-02T15:16:16.630955Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24525 }], + "GranuleUR": "S1_372326_IW3_20201202T151612_VV_33A1-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-12-02T14:42:26.104258Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2439265461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-12-02T15:16:12.353283"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["52676517"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_024525_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419094.283975,-3214206.886006,5811381.501238,2020-12-02T15:16:20.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365659.837749,-3179244.676723,5852372.096018,2020-12-02T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.541088,-3474.391458,-4131.922849,2020-12-02T15:16:20.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.237634,-3517.990204,-4066.11931,2020-12-02T15:16:10.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:04Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:04Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201202T151557_20201202T151624_024525_02EA5C_33A1/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201202T151557_20201202T151624_024525_02EA5C_33A1/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201202T151557_20201202T151624_024525_02EA5C_33A1-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365659.837749, -3179244.676723, 5852372.096018], + "prePositionTime": "2020-12-02T15:16:10.000000Z", + "postPosition": + [-2419094.283975, -3214206.886006, 5811381.501238], + "postPositionTime": "2020-12-02T15:16:20.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.237634, -3517.990204, -4066.11931], + "preVelocityTime": "2020-12-02T15:16:10.000000", + "postVelocity": [-5332.541088, -3474.391458, -4131.922849], + "postVelocityTime": "2020-12-02T15:16:20.000000", + }, + }, + "ascendingNodeTime": "2020-12-02T14:42:26.104258Z", + "relative_start_time": 2027.4043068885803, + "relative_center_time": 2028.9655017852783, + "relative_end_time": 2030.526696920395, + "relative_sv_pre_time": 2023.8957419395447, + "relative_sv_post_time": 2033.8957419395447, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201214T151611_VV_B75B-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_024700_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 24700, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201214T151611_VV_B75B-BURST", + "sensor": "C-SAR", + "startTime": "2020-12-14T15:16:13.010595Z", + "stopTime": "2020-12-14T15:16:16.132985Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201214T151557_20201214T151624_024700_02F00C_B75B/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201214T151611_VV_B75B-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 53052405, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-12-14T15:16:11.867646", + "azimuthAnxTime": "2026.2559667713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201214T151557_20201214T151624_024700_02F00C_B75B/IW3/VV/5.xml", + ], + "temporalBaseline": 852, + "perpendicularBaseline": 164, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709375105-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201214T151611_VV_B75B-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:20.908Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-12-14T15:16:13.010595Z", + "EndingDateTime": "2020-12-14T15:16:16.132985Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24700 }], + "GranuleUR": "S1_372326_IW3_20201214T151611_VV_B75B-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-12-14T14:42:25.606376Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2559667713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-12-14T15:16:11.867646"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["53052405"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_024700_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419112.775144,-3214197.9987,5811382.805701,2020-12-14T15:16:20.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365678.601501,-3179235.580943,5852373.480282,2020-12-14T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.513748,-3474.412402,-4131.930787,2020-12-14T15:16:20.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.210439,-3518.010958,-4066.127324,2020-12-14T15:16:10.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:20Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:20Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201214T151557_20201214T151624_024700_02F00C_B75B/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201214T151557_20201214T151624_024700_02F00C_B75B/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201214T151557_20201214T151624_024700_02F00C_B75B-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365678.601501, -3179235.580943, 5852373.480282], + "prePositionTime": "2020-12-14T15:16:10.000000Z", + "postPosition": + [-2419112.775144, -3214197.9987, 5811382.805701], + "postPositionTime": "2020-12-14T15:16:20.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.210439, -3518.010958, -4066.127324], + "preVelocityTime": "2020-12-14T15:16:10.000000", + "postVelocity": [-5332.513748, -3474.412402, -4131.930787], + "postVelocityTime": "2020-12-14T15:16:20.000000", + }, + }, + "ascendingNodeTime": "2020-12-14T14:42:25.606376Z", + "relative_start_time": 2027.4042191505432, + "relative_center_time": 2028.9654142856598, + "relative_end_time": 2030.5266091823578, + "relative_sv_pre_time": 2024.3936240673065, + "relative_sv_post_time": 2034.3936240673065, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20201226T151611_VV_CAEF-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_024875_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 24875, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20201226T151611_VV_CAEF-BURST", + "sensor": "C-SAR", + "startTime": "2020-12-26T15:16:12.379140Z", + "stopTime": "2020-12-26T15:16:15.501530Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201226T151556_20201226T151623_024875_02F5B8_CAEF/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20201226T151611_VV_CAEF-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 53428292, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2020-12-26T15:16:11.230024", + "azimuthAnxTime": "2026.2505425461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201226T151556_20201226T151623_024875_02F5B8_CAEF/IW3/VV/5.xml", + ], + "temporalBaseline": 864, + "perpendicularBaseline": 84, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709367644-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20201226T151611_VV_CAEF-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:16:51.194Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2020-12-26T15:16:12.379140Z", + "EndingDateTime": "2020-12-26T15:16:15.501530Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24875 }], + "GranuleUR": "S1_372326_IW3_20201226T151611_VV_CAEF-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2020-12-26T14:42:24.973834Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2505425461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2020-12-26T15:16:11.230024"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["53428292"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_024875_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419037.508606,-3214272.575593,5811373.836849,2020-12-26T15:16:19.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365603.460675,-3179309.83285,5852364.481846,2020-12-26T15:16:09.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.501635,-3474.444519,-4131.927782,2020-12-26T15:16:19.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.197429,-3518.043871,-4066.12444,2020-12-26T15:16:09.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:16:51Z" }, + { "Type": "Update", "Date": "2023-06-16T01:16:51Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201226T151556_20201226T151623_024875_02F5B8_CAEF/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20201226T151556_20201226T151623_024875_02F5B8_CAEF/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20201226T151556_20201226T151623_024875_02F5B8_CAEF-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365603.460675, -3179309.83285, 5852364.481846], + "prePositionTime": "2020-12-26T15:16:09.000000Z", + "postPosition": + [-2419037.508606, -3214272.575593, 5811373.836849], + "postPositionTime": "2020-12-26T15:16:19.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.197429, -3518.043871, -4066.12444], + "preVelocityTime": "2020-12-26T15:16:09.000000", + "postVelocity": [-5332.501635, -3474.444519, -4131.927782], + "postVelocityTime": "2020-12-26T15:16:19.000000", + }, + }, + "ascendingNodeTime": "2020-12-26T14:42:24.973834Z", + "relative_start_time": 2027.4053058624268, + "relative_center_time": 2028.9665007591248, + "relative_end_time": 2030.5276958942413, + "relative_sv_pre_time": 2024.0261659622192, + "relative_sv_post_time": 2034.0261659622192, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210107T151610_VV_DB32-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_025050_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 25050, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210107T151610_VV_DB32-BURST", + "sensor": "C-SAR", + "startTime": "2021-01-07T15:16:11.729894Z", + "stopTime": "2021-01-07T15:16:14.852284Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210107T151555_20210107T151622_025050_02FB52_DB32/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210107T151610_VV_DB32-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 53804180, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-01-07T15:16:10.576682", + "azimuthAnxTime": "2026.2470586587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210107T151555_20210107T151622_025050_02FB52_DB32/IW3/VV/5.xml", + ], + "temporalBaseline": 876, + "perpendicularBaseline": -1, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709357633-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210107T151610_VV_DB32-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:45.639Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-01-07T15:16:11.729894Z", + "EndingDateTime": "2021-01-07T15:16:14.852284Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 25050 }], + "GranuleUR": "S1_372326_IW3_20210107T151610_VV_DB32-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-01-07T14:42:24.327779Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2470586587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-01-07T15:16:10.576682"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["53804180"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_025050_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2418972.581871,-3214357.081564,5811352.907939,2021-01-07T15:16:18.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365538.187161,-3179394.676659,5852343.566727,2021-01-07T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.536659,-3474.41023,-4131.929065,2021-01-07T15:16:18.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.231781,-3518.010595,-4066.125925,2021-01-07T15:16:08.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:45Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:45Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210107T151555_20210107T151622_025050_02FB52_DB32/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210107T151555_20210107T151622_025050_02FB52_DB32/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210107T151555_20210107T151622_025050_02FB52_DB32-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365538.187161, -3179394.676659, 5852343.566727], + "prePositionTime": "2021-01-07T15:16:08.000000Z", + "postPosition": + [-2418972.581871, -3214357.081564, 5811352.907939], + "postPositionTime": "2021-01-07T15:16:18.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.231781, -3518.010595, -4066.125925], + "preVelocityTime": "2021-01-07T15:16:08.000000", + "postVelocity": [-5332.536659, -3474.41023, -4131.929065], + "postVelocityTime": "2021-01-07T15:16:18.000000", + }, + }, + "ascendingNodeTime": "2021-01-07T14:42:24.327779Z", + "relative_start_time": 2027.402114868164, + "relative_center_time": 2028.9633100032806, + "relative_end_time": 2030.5245048999786, + "relative_sv_pre_time": 2023.6722209453583, + "relative_sv_post_time": 2033.6722209453583, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210119T151610_VV_6AAB-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_025225_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 25225, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210119T151610_VV_6AAB-BURST", + "sensor": "C-SAR", + "startTime": "2021-01-19T15:16:11.260595Z", + "stopTime": "2021-01-19T15:16:14.382985Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210119T151555_20210119T151622_025225_0300ED_6AAB/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210119T151610_VV_6AAB-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 54180067, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-01-19T15:16:10.121757", + "azimuthAnxTime": "2026.2571104402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210119T151555_20210119T151622_025225_0300ED_6AAB/IW3/VV/5.xml", + ], + "temporalBaseline": 888, + "perpendicularBaseline": 5, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709379883-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210119T151610_VV_6AAB-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:38.615Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-01-19T15:16:11.260595Z", + "EndingDateTime": "2021-01-19T15:16:14.382985Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 25225 }], + "GranuleUR": "S1_372326_IW3_20210119T151610_VV_6AAB-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-01-19T14:42:23.859511Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2571104402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-01-19T15:16:10.121757"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["54180067"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_025225_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2418980.932845,-3214350.659382,5811352.60616,2021-01-19T15:16:18.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365546.071058,-3179388.78514,5852343.123925,2021-01-19T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.583293,-3474.357152,-4131.914963,2021-01-19T15:16:18.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.278583,-3517.957525,-4066.111821,2021-01-19T15:16:08.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:38Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:38Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210119T151555_20210119T151622_025225_0300ED_6AAB/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210119T151555_20210119T151622_025225_0300ED_6AAB/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210119T151555_20210119T151622_025225_0300ED_6AAB-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365546.071058, -3179388.78514, 5852343.123925], + "prePositionTime": "2021-01-19T15:16:08.000000Z", + "postPosition": + [-2418980.932845, -3214350.659382, 5811352.60616], + "postPositionTime": "2021-01-19T15:16:18.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.278583, -3517.957525, -4066.111821], + "preVelocityTime": "2021-01-19T15:16:08.000000", + "postVelocity": [-5332.583293, -3474.357152, -4131.914963], + "postVelocityTime": "2021-01-19T15:16:18.000000", + }, + }, + "ascendingNodeTime": "2021-01-19T14:42:23.859511Z", + "relative_start_time": 2027.4010841846466, + "relative_center_time": 2028.9622793197632, + "relative_end_time": 2030.5234742164612, + "relative_sv_pre_time": 2024.14048910141, + "relative_sv_post_time": 2034.14048910141, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210131T151609_VV_415D-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_025400_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 25400, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210131T151609_VV_415D-BURST", + "sensor": "C-SAR", + "startTime": "2021-01-31T15:16:10.904882Z", + "stopTime": "2021-01-31T15:16:14.027272Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210131T151555_20210131T151621_025400_03067B_415D/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210131T151609_VV_415D-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 54555954, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-01-31T15:16:09.761949", + "azimuthAnxTime": "2026.2537345461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210131T151555_20210131T151621_025400_03067B_415D/IW3/VV/5.xml", + ], + "temporalBaseline": 900, + "perpendicularBaseline": 127, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709367848-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210131T151609_VV_415D-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:11.057Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-01-31T15:16:10.904882Z", + "EndingDateTime": "2021-01-31T15:16:14.027272Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 25400 }], + "GranuleUR": "S1_372326_IW3_20210131T151609_VV_415D-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-01-31T14:42:23.503057Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2537345461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-01-31T15:16:09.761949"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["54555954"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_025400_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419092.740995,-3214237.488538,5811368.123035,2021-01-31T15:16:18.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365657.91479,-3179275.863104,5852358.750596,2021-01-31T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.57909,-3474.332883,-4131.926025,2021-01-31T15:16:18.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.275673,-3517.931995,-4066.122699,2021-01-31T15:16:08.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:10Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:10Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210131T151555_20210131T151621_025400_03067B_415D/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210131T151555_20210131T151621_025400_03067B_415D/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210131T151555_20210131T151621_025400_03067B_415D-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365657.91479, -3179275.863104, 5852358.750596], + "prePositionTime": "2021-01-31T15:16:08.000000Z", + "postPosition": + [-2419092.740995, -3214237.488538, 5811368.123035], + "postPositionTime": "2021-01-31T15:16:18.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.275673, -3517.931995, -4066.122699], + "preVelocityTime": "2021-01-31T15:16:08.000000", + "postVelocity": [-5332.57909, -3474.332883, -4131.926025], + "postVelocityTime": "2021-01-31T15:16:18.000000", + }, + }, + "ascendingNodeTime": "2021-01-31T14:42:23.503057Z", + "relative_start_time": 2027.4018249511719, + "relative_center_time": 2028.9630198478699, + "relative_end_time": 2030.5242149829865, + "relative_sv_pre_time": 2024.4969429969788, + "relative_sv_post_time": 2034.4969429969788, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210212T151609_VV_5BC5-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_025575_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 25575, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210212T151609_VV_5BC5-BURST", + "sensor": "C-SAR", + "startTime": "2021-02-12T15:16:10.582875Z", + "stopTime": "2021-02-12T15:16:13.705265Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210212T151554_20210212T151621_025575_030C38_5BC5/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210212T151609_VV_5BC5-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 54931842, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-02-12T15:16:09.431705", + "azimuthAnxTime": "2026.2440701024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210212T151554_20210212T151621_025575_030C38_5BC5/IW3/VV/5.xml", + ], + "temporalBaseline": 912, + "perpendicularBaseline": 193, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709357613-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210212T151609_VV_5BC5-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:59.994Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-02-12T15:16:10.582875Z", + "EndingDateTime": "2021-02-12T15:16:13.705265Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 25575 }], + "GranuleUR": "S1_372326_IW3_20210212T151609_VV_5BC5-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-02-12T14:42:23.182916Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2440701024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-02-12T15:16:09.431705"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["54931842"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_025575_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419163.398258,-3214185.233086,5811362.388812,2021-02-12T15:16:17.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365728.755645,-3179223.635097,5852353.270978,2021-02-12T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.5603,-3474.330408,-4131.951509,2021-02-12T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.257733,-3517.928974,-4066.148128,2021-02-12T15:16:07.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:59Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:59Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210212T151554_20210212T151621_025575_030C38_5BC5/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210212T151554_20210212T151621_025575_030C38_5BC5/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210212T151554_20210212T151621_025575_030C38_5BC5-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365728.755645, -3179223.635097, 5852353.270978], + "prePositionTime": "2021-02-12T15:16:07.000000Z", + "postPosition": + [-2419163.398258, -3214185.233086, 5811362.388812], + "postPositionTime": "2021-02-12T15:16:17.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.257733, -3517.928974, -4066.148128], + "preVelocityTime": "2021-02-12T15:16:07.000000", + "postVelocity": [-5332.5603, -3474.330408, -4131.951509], + "postVelocityTime": "2021-02-12T15:16:17.000000", + }, + }, + "ascendingNodeTime": "2021-02-12T14:42:23.182916Z", + "relative_start_time": 2027.3999590873718, + "relative_center_time": 2028.9611542224884, + "relative_end_time": 2030.5223491191864, + "relative_sv_pre_time": 2023.8170840740204, + "relative_sv_post_time": 2033.8170840740204, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210224T151609_VV_7026-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_025750_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 25750, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210224T151609_VV_7026-BURST", + "sensor": "C-SAR", + "startTime": "2021-02-24T15:16:10.346700Z", + "stopTime": "2021-02-24T15:16:13.469090Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210224T151554_20210224T151621_025750_0311EE_7026/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210224T151609_VV_7026-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 55307729, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-02-24T15:16:09.214030", + "azimuthAnxTime": "2026.259353215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210224T151554_20210224T151621_025750_0311EE_7026/IW3/VV/5.xml", + ], + "temporalBaseline": 924, + "perpendicularBaseline": 90, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709360764-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210224T151609_VV_7026-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:23.066Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-02-24T15:16:10.346700Z", + "EndingDateTime": "2021-02-24T15:16:13.469090Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 25750 }], + "GranuleUR": "S1_372326_IW3_20210224T151609_VV_7026-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-02-24T14:42:22.951584Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.259353215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-02-24T15:16:09.214030"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["55307729"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_025750_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419096.074203,-3214269.468677,5811318.075319,2021-02-24T15:16:17.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365661.517482,-3179307.563881,5852309.324611,2021-02-24T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.551968,-3474.360474,-4131.988267,2021-02-24T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.248848,-3517.960289,-4066.184789,2021-02-24T15:16:07.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:22Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:22Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210224T151554_20210224T151621_025750_0311EE_7026/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210224T151554_20210224T151621_025750_0311EE_7026/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210224T151554_20210224T151621_025750_0311EE_7026-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365661.517482, -3179307.563881, 5852309.324611], + "prePositionTime": "2021-02-24T15:16:07.000000Z", + "postPosition": + [-2419096.074203, -3214269.468677, 5811318.075319], + "postPositionTime": "2021-02-24T15:16:17.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.248848, -3517.960289, -4066.184789], + "preVelocityTime": "2021-02-24T15:16:07.000000", + "postVelocity": [-5332.551968, -3474.360474, -4131.988267], + "postVelocityTime": "2021-02-24T15:16:17.000000", + }, + }, + "ascendingNodeTime": "2021-02-24T14:42:22.951584Z", + "relative_start_time": 2027.395115852356, + "relative_center_time": 2028.9563109874725, + "relative_end_time": 2030.5175058841705, + "relative_sv_pre_time": 2024.0484158992767, + "relative_sv_post_time": 2034.0484158992767, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210320T151609_VV_3AB5-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_026100_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 26100, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210320T151609_VV_3AB5-BURST", + "sensor": "C-SAR", + "startTime": "2021-03-20T15:16:10.362676Z", + "stopTime": "2021-03-20T15:16:13.485066Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210320T151554_20210320T151621_026100_031D4B_3AB5/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210320T151609_VV_3AB5-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 56059504, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-03-20T15:16:09.217674", + "azimuthAnxTime": "2026.2349438839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210320T151554_20210320T151621_026100_031D4B_3AB5/IW3/VV/5.xml", + ], + "temporalBaseline": 948, + "perpendicularBaseline": -63, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709358885-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210320T151609_VV_3AB5-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:46.081Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-03-20T15:16:10.362676Z", + "EndingDateTime": "2021-03-20T15:16:13.485066Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 26100 }], + "GranuleUR": "S1_372326_IW3_20210320T151609_VV_3AB5-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-03-20T14:42:22.978135Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2349438839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-03-20T15:16:09.217674"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["56059504"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_026100_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419063.389791,-3214432.82474,5811196.064049,2021-03-20T15:16:17.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365628.719325,-3179471.367881,5852188.504061,2021-03-20T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.563292,-3474.314491,-4132.107193,2021-03-20T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.260297,-3517.916726,-4066.304036,2021-03-20T15:16:07.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:45Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:45Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210320T151554_20210320T151621_026100_031D4B_3AB5/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210320T151554_20210320T151621_026100_031D4B_3AB5/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210320T151554_20210320T151621_026100_031D4B_3AB5-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365628.719325, -3179471.367881, 5852188.504061], + "prePositionTime": "2021-03-20T15:16:07.000000Z", + "postPosition": + [-2419063.389791, -3214432.82474, 5811196.064049], + "postPositionTime": "2021-03-20T15:16:17.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.260297, -3517.916726, -4066.304036], + "preVelocityTime": "2021-03-20T15:16:07.000000", + "postVelocity": [-5332.563292, -3474.314491, -4132.107193], + "postVelocityTime": "2021-03-20T15:16:17.000000", + }, + }, + "ascendingNodeTime": "2021-03-20T14:42:22.978135Z", + "relative_start_time": 2027.38454079628, + "relative_center_time": 2028.9457359313965, + "relative_end_time": 2030.5069308280945, + "relative_sv_pre_time": 2024.0218648910522, + "relative_sv_post_time": 2034.0218648910522, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210401T151609_VV_67B9-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_026275_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 26275, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210401T151609_VV_67B9-BURST", + "sensor": "C-SAR", + "startTime": "2021-04-01T15:16:10.567769Z", + "stopTime": "2021-04-01T15:16:13.690159Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210401T151554_20210401T151621_026275_0322CB_67B9/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210401T151609_VV_67B9-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 56435391, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-04-01T15:16:09.422767", + "azimuthAnxTime": "2026.2405647713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210401T151554_20210401T151621_026275_0322CB_67B9/IW3/VV/5.xml", + ], + "temporalBaseline": 960, + "perpendicularBaseline": -33, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709367653-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210401T151609_VV_67B9-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:17.368Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-04-01T15:16:10.567769Z", + "EndingDateTime": "2021-04-01T15:16:13.690159Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 26275 }], + "GranuleUR": "S1_372326_IW3_20210401T151609_VV_67B9-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-04-01T14:42:23.193608Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2405647713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-04-01T15:16:09.422767"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["56435391"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_026275_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419134.940928,-3214422.886444,5811157.923218,2021-04-01T15:16:17.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365700.69562,-3179461.305628,5852150.959793,2021-04-01T15:16:07.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.520326,-3474.326892,-4132.166803,2021-04-01T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.218251,-3517.929129,-4066.363752,2021-04-01T15:16:07.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:17Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:17Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210401T151554_20210401T151621_026275_0322CB_67B9/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210401T151554_20210401T151621_026275_0322CB_67B9/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210401T151554_20210401T151621_026275_0322CB_67B9-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365700.69562, -3179461.305628, 5852150.959793], + "prePositionTime": "2021-04-01T15:16:07.000000Z", + "postPosition": + [-2419134.940928, -3214422.886444, 5811157.923218], + "postPositionTime": "2021-04-01T15:16:17.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.218251, -3517.929129, -4066.363752], + "preVelocityTime": "2021-04-01T15:16:07.000000", + "postVelocity": [-5332.520326, -3474.326892, -4132.166803], + "postVelocityTime": "2021-04-01T15:16:17.000000", + }, + }, + "ascendingNodeTime": "2021-04-01T14:42:23.193608Z", + "relative_start_time": 2027.3741610050201, + "relative_center_time": 2028.9353559017181, + "relative_end_time": 2030.4965510368347, + "relative_sv_pre_time": 2023.806391954422, + "relative_sv_post_time": 2033.806391954422, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210413T151609_VV_0494-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_026450_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 26450, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210413T151609_VV_0494-BURST", + "sensor": "C-SAR", + "startTime": "2021-04-13T15:16:11.025731Z", + "stopTime": "2021-04-13T15:16:14.148121Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210413T151555_20210413T151622_026450_032864_0494/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210413T151609_VV_0494-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 56811279, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-04-13T15:16:09.868394", + "azimuthAnxTime": "2026.2172491024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210413T151555_20210413T151622_026450_032864_0494/IW3/VV/5.xml", + ], + "temporalBaseline": 972, + "perpendicularBaseline": 20, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709357646-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210413T151609_VV_0494-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:15:27.700Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-04-13T15:16:11.025731Z", + "EndingDateTime": "2021-04-13T15:16:14.148121Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 26450 }], + "GranuleUR": "S1_372326_IW3_20210413T151609_VV_0494-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-04-13T14:42:23.659728Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2172491024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-04-13T15:16:09.868394"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["56811279"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_026450_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419222.851861,-3214392.476185,5811133.033781,2021-04-13T15:16:18.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365788.607987,-3179431.242817,5852126.351165,2021-04-13T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.519647,-3474.292268,-4132.194798,2021-04-13T15:16:18.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.218661,-3517.894231,-4066.391905,2021-04-13T15:16:08.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:15:27Z" }, + { "Type": "Update", "Date": "2023-06-16T01:15:27Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210413T151555_20210413T151622_026450_032864_0494/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210413T151555_20210413T151622_026450_032864_0494/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210413T151555_20210413T151622_026450_032864_0494-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365788.607987, -3179431.242817, 5852126.351165], + "prePositionTime": "2021-04-13T15:16:08.000000Z", + "postPosition": + [-2419222.851861, -3214392.476185, 5811133.033781], + "postPositionTime": "2021-04-13T15:16:18.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.218661, -3517.894231, -4066.391905], + "preVelocityTime": "2021-04-13T15:16:08.000000", + "postVelocity": [-5332.519647, -3474.292268, -4132.194798], + "postVelocityTime": "2021-04-13T15:16:18.000000", + }, + }, + "ascendingNodeTime": "2021-04-13T14:42:23.659728Z", + "relative_start_time": 2027.366003036499, + "relative_center_time": 2028.927197933197, + "relative_end_time": 2030.4883930683136, + "relative_sv_pre_time": 2024.340271949768, + "relative_sv_post_time": 2034.340271949768, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210425T151610_VV_6189-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_026625_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 26625, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210425T151610_VV_6189-BURST", + "sensor": "C-SAR", + "startTime": "2021-04-25T15:16:11.702199Z", + "stopTime": "2021-04-25T15:16:14.824589Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210425T151555_20210425T151622_026625_032E01_6189/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210425T151610_VV_6189-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 57187166, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-04-25T15:16:10.534601", + "azimuthAnxTime": "2026.2061429898", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210425T151555_20210425T151622_026625_032E01_6189/IW3/VV/5.xml", + ], + "temporalBaseline": 984, + "perpendicularBaseline": 109, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709353616-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210425T151610_VV_6189-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:35.319Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-04-25T15:16:11.702199Z", + "EndingDateTime": "2021-04-25T15:16:14.824589Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 26625 }], + "GranuleUR": "S1_372326_IW3_20210425T151610_VV_6189-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-04-25T14:42:24.337825Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2061429898"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-04-25T15:16:10.534601"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["57187166"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_026625_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419314.604592,-3214318.305098,5811129.750582,2021-04-25T15:16:18.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365880.394077,-3179357.329763,5852123.322118,2021-04-25T15:16:08.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.515746,-3474.266835,-4132.220258,2021-04-25T15:16:18.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.215884,-3517.868035,-4066.417259,2021-04-25T15:16:08.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:35Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:35Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210425T151555_20210425T151622_026625_032E01_6189/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210425T151555_20210425T151622_026625_032E01_6189/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210425T151555_20210425T151622_026625_032E01_6189-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365880.394077, -3179357.329763, 5852123.322118], + "prePositionTime": "2021-04-25T15:16:08.000000Z", + "postPosition": + [-2419314.604592, -3214318.305098, 5811129.750582], + "postPositionTime": "2021-04-25T15:16:18.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.215884, -3517.868035, -4066.417259], + "preVelocityTime": "2021-04-25T15:16:08.000000", + "postVelocity": [-5332.515746, -3474.266835, -4132.220258], + "postVelocityTime": "2021-04-25T15:16:18.000000", + }, + }, + "ascendingNodeTime": "2021-04-25T14:42:24.337825Z", + "relative_start_time": 2027.364373922348, + "relative_center_time": 2028.925568819046, + "relative_end_time": 2030.4867639541626, + "relative_sv_pre_time": 2023.6621749401093, + "relative_sv_post_time": 2033.6621749401093, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210507T151611_VV_E754-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_026800_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 26800, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210507T151611_VV_E754-BURST", + "sensor": "C-SAR", + "startTime": "2021-05-07T15:16:12.217550Z", + "stopTime": "2021-05-07T15:16:15.339940Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210507T151556_20210507T151623_026800_033399_E754/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210507T151611_VV_E754-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 57563053, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-05-07T15:16:11.056101", + "azimuthAnxTime": "2026.2119146587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210507T151556_20210507T151623_026800_033399_E754/IW3/VV/5.xml", + ], + "temporalBaseline": 996, + "perpendicularBaseline": 42, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709372245-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210507T151611_VV_E754-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:13:03.736Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-05-07T15:16:12.217550Z", + "EndingDateTime": "2021-05-07T15:16:15.339940Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 26800 }], + "GranuleUR": "S1_372326_IW3_20210507T151611_VV_E754-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-05-07T14:42:24.855695Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2119146587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-05-07T15:16:11.056101"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["57563053"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_026800_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419299.096563,-3214421.869523,5811097.253628,2021-05-07T15:16:19.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365864.709453,-3179461.542511,5852091.034719,2021-05-07T15:16:09.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.533521,-3474.201524,-4132.240819,2021-05-07T15:16:19.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.233407,-3517.803687,-4066.4386,2021-05-07T15:16:09.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:13:03Z" }, + { "Type": "Update", "Date": "2023-06-16T01:13:03Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210507T151556_20210507T151623_026800_033399_E754/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210507T151556_20210507T151623_026800_033399_E754/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210507T151556_20210507T151623_026800_033399_E754-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365864.709453, -3179461.542511, 5852091.034719], + "prePositionTime": "2021-05-07T15:16:09.000000Z", + "postPosition": + [-2419299.096563, -3214421.869523, 5811097.253628], + "postPositionTime": "2021-05-07T15:16:19.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.233407, -3517.803687, -4066.4386], + "preVelocityTime": "2021-05-07T15:16:09.000000", + "postVelocity": [-5332.533521, -3474.201524, -4132.240819], + "postVelocityTime": "2021-05-07T15:16:19.000000", + }, + }, + "ascendingNodeTime": "2021-05-07T14:42:24.855695Z", + "relative_start_time": 2027.3618550300598, + "relative_center_time": 2028.9230501651764, + "relative_end_time": 2030.4842450618744, + "relative_sv_pre_time": 2024.1443049907684, + "relative_sv_post_time": 2034.1443049907684, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210519T151611_VV_7ABB-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_026975_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 26975, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210519T151611_VV_7ABB-BURST", + "sensor": "C-SAR", + "startTime": "2021-05-19T15:16:12.805852Z", + "stopTime": "2021-05-19T15:16:15.928242Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210519T151556_20210519T151623_026975_03390A_7ABB/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210519T151611_VV_7ABB-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 57938941, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-05-19T15:16:11.650585", + "azimuthAnxTime": "2026.2211793276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210519T151556_20210519T151623_026975_03390A_7ABB/IW3/VV/5.xml", + ], + "temporalBaseline": 1008, + "perpendicularBaseline": 11, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709361443-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210519T151611_VV_7ABB-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:11.819Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-05-19T15:16:12.805852Z", + "EndingDateTime": "2021-05-19T15:16:15.928242Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 26975 }], + "GranuleUR": "S1_372326_IW3_20210519T151611_VV_7ABB-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-05-19T14:42:25.438389Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2211793276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-05-19T15:16:11.650585"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["57938941"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_026975_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419214.869295,-3214397.73498,5811131.847274,2021-05-19T15:16:20.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365780.292863,-3179436.885987,5852125.120147,2021-05-19T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.552887,-3474.253774,-4132.19035,2021-05-19T15:16:20.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.251874,-3517.855863,-4066.387433,2021-05-19T15:16:10.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:11Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:11Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210519T151556_20210519T151623_026975_03390A_7ABB/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210519T151556_20210519T151623_026975_03390A_7ABB/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210519T151556_20210519T151623_026975_03390A_7ABB-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365780.292863, -3179436.885987, 5852125.120147], + "prePositionTime": "2021-05-19T15:16:10.000000Z", + "postPosition": + [-2419214.869295, -3214397.73498, 5811131.847274], + "postPositionTime": "2021-05-19T15:16:20.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.251874, -3517.855863, -4066.387433], + "preVelocityTime": "2021-05-19T15:16:10.000000", + "postVelocity": [-5332.552887, -3474.253774, -4132.19035], + "postVelocityTime": "2021-05-19T15:16:20.000000", + }, + }, + "ascendingNodeTime": "2021-05-19T14:42:25.438389Z", + "relative_start_time": 2027.3674628734589, + "relative_center_time": 2028.9286577701569, + "relative_end_time": 2030.4898529052734, + "relative_sv_pre_time": 2024.5616109371185, + "relative_sv_post_time": 2034.5616109371185, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210531T151612_VV_FC40-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_027150_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 27150, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210531T151612_VV_FC40-BURST", + "sensor": "C-SAR", + "startTime": "2021-05-31T15:16:13.566045Z", + "stopTime": "2021-05-31T15:16:16.688435Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210531T151557_20210531T151624_027150_033E3D_FC40/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210531T151612_VV_FC40-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 58314828, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-05-31T15:16:12.404596", + "azimuthAnxTime": "2026.211437215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210531T151557_20210531T151624_027150_033E3D_FC40/IW3/VV/5.xml", + ], + "temporalBaseline": 1020, + "perpendicularBaseline": 21, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709365529-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210531T151612_VV_FC40-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:16.630Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-05-31T15:16:13.566045Z", + "EndingDateTime": "2021-05-31T15:16:16.688435Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 27150 }], + "GranuleUR": "S1_372326_IW3_20210531T151612_VV_FC40-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-05-31T14:42:26.200920Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.211437215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-05-31T15:16:12.404596"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["58314828"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_027150_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419253.346145,-3214428.780556,5811116.426224,2021-05-31T15:16:20.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365818.996532,-3179468.152376,5852109.932632,2021-05-31T15:16:10.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.530054,-3474.231654,-4132.213419,2021-05-31T15:16:20.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.229342,-3517.83384,-4066.41108,2021-05-31T15:16:10.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:16Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:16Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210531T151557_20210531T151624_027150_033E3D_FC40/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210531T151557_20210531T151624_027150_033E3D_FC40/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210531T151557_20210531T151624_027150_033E3D_FC40-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365818.996532, -3179468.152376, 5852109.932632], + "prePositionTime": "2021-05-31T15:16:10.000000Z", + "postPosition": + [-2419253.346145, -3214428.780556, 5811116.426224], + "postPositionTime": "2021-05-31T15:16:20.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.229342, -3517.83384, -4066.41108], + "preVelocityTime": "2021-05-31T15:16:10.000000", + "postVelocity": [-5332.530054, -3474.231654, -4132.213419], + "postVelocityTime": "2021-05-31T15:16:20.000000", + }, + }, + "ascendingNodeTime": "2021-05-31T14:42:26.200920Z", + "relative_start_time": 2027.3651249408722, + "relative_center_time": 2028.9263200759888, + "relative_end_time": 2030.4875149726868, + "relative_sv_pre_time": 2023.7990798950195, + "relative_sv_post_time": 2033.7990798950195, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210612T151613_VV_F543-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_027325_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 27325, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210612T151613_VV_F543-BURST", + "sensor": "C-SAR", + "startTime": "2021-06-12T15:16:14.356145Z", + "stopTime": "2021-06-12T15:16:17.478535Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210612T151558_20210612T151625_027325_03437E_F543/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210612T151613_VV_F543-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 58690715, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-06-12T15:16:13.209084", + "azimuthAnxTime": "2026.2355404402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210612T151558_20210612T151625_027325_03437E_F543/IW3/VV/5.xml", + ], + "temporalBaseline": 1032, + "perpendicularBaseline": 78, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709352599-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210612T151613_VV_F543-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:08.768Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-06-12T15:16:14.356145Z", + "EndingDateTime": "2021-06-12T15:16:17.478535Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 27325 }], + "GranuleUR": "S1_372326_IW3_20210612T151613_VV_F543-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-06-12T14:42:26.986355Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2355404402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-06-12T15:16:13.209084"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["58690715"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_027325_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419276.608886,-3214356.777666,5811144.965727,2021-06-12T15:16:21.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365842.207265,-3179396.065484,5852138.279076,2021-06-12T15:16:11.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.535136,-3474.240452,-4132.194298,2021-06-12T15:16:21.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.234693,-3517.841856,-4066.391611,2021-06-12T15:16:11.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:08Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:08Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210612T151558_20210612T151625_027325_03437E_F543/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210612T151558_20210612T151625_027325_03437E_F543/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210612T151558_20210612T151625_027325_03437E_F543-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365842.207265, -3179396.065484, 5852138.279076], + "prePositionTime": "2021-06-12T15:16:11.000000Z", + "postPosition": + [-2419276.608886, -3214356.777666, 5811144.965727], + "postPositionTime": "2021-06-12T15:16:21.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.234693, -3517.841856, -4066.391611], + "preVelocityTime": "2021-06-12T15:16:11.000000", + "postVelocity": [-5332.535136, -3474.240452, -4132.194298], + "postVelocityTime": "2021-06-12T15:16:21.000000", + }, + }, + "ascendingNodeTime": "2021-06-12T14:42:26.986355Z", + "relative_start_time": 2027.369789838791, + "relative_center_time": 2028.930984735489, + "relative_end_time": 2030.4921798706055, + "relative_sv_pre_time": 2024.0136449337006, + "relative_sv_post_time": 2034.0136449337006, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210624T151613_VV_C27A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_027500_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 27500, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210624T151613_VV_C27A-BURST", + "sensor": "C-SAR", + "startTime": "2021-06-24T15:16:14.945913Z", + "stopTime": "2021-06-24T15:16:18.068303Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210624T151559_20210624T151626_027500_034869_C27A/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210624T151613_VV_C27A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 59066603, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-06-24T15:16:13.786534", + "azimuthAnxTime": "2026.2087121024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210624T151559_20210624T151626_027500_034869_C27A/IW3/VV/5.xml", + ], + "temporalBaseline": 1044, + "perpendicularBaseline": 91, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709361147-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210624T151613_VV_C27A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:17.819Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-06-24T15:16:14.945913Z", + "EndingDateTime": "2021-06-24T15:16:18.068303Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 27500 }], + "GranuleUR": "S1_372326_IW3_20210624T151613_VV_C27A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-06-24T14:42:27.587098Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2087121024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-06-24T15:16:13.786534"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["59066603"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_027500_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419335.81054,-3214374.024541,5811110.352019,2021-06-24T15:16:22.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365902.293417,-3179412.712582,5852104.236744,2021-06-24T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.446406,-3474.3004,-4132.251255,2021-06-24T15:16:22.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.146555,-3517.901867,-4066.448941,2021-06-24T15:16:12.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:17Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:17Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210624T151559_20210624T151626_027500_034869_C27A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210624T151559_20210624T151626_027500_034869_C27A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210624T151559_20210624T151626_027500_034869_C27A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365902.293417, -3179412.712582, 5852104.236744], + "prePositionTime": "2021-06-24T15:16:12.000000Z", + "postPosition": + [-2419335.81054, -3214374.024541, 5811110.352019], + "postPositionTime": "2021-06-24T15:16:22.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.146555, -3517.901867, -4066.448941], + "preVelocityTime": "2021-06-24T15:16:12.000000", + "postVelocity": [-5332.446406, -3474.3004, -4132.251255], + "postVelocityTime": "2021-06-24T15:16:22.000000", + }, + }, + "ascendingNodeTime": "2021-06-24T14:42:27.587098Z", + "relative_start_time": 2027.3588151931763, + "relative_center_time": 2028.9200103282928, + "relative_end_time": 2030.4812052249908, + "relative_sv_pre_time": 2024.4129021167755, + "relative_sv_post_time": 2034.4129021167755, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210706T151614_VV_C48D-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_027675_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 27675, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210706T151614_VV_C48D-BURST", + "sensor": "C-SAR", + "startTime": "2021-07-06T15:16:15.534246Z", + "stopTime": "2021-07-06T15:16:18.656636Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210706T151559_20210706T151626_027675_034D8E_C48D/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210706T151614_VV_C48D-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 59442490, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-07-06T15:16:14.387185", + "azimuthAnxTime": "2026.2295778839", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210706T151559_20210706T151626_027675_034D8E_C48D/IW3/VV/5.xml", + ], + "temporalBaseline": 1056, + "perpendicularBaseline": 30, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709384131-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210706T151614_VV_C48D-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:13.045Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-07-06T15:16:15.534246Z", + "EndingDateTime": "2021-07-06T15:16:18.656636Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 27675 }], + "GranuleUR": "S1_372326_IW3_20210706T151614_VV_C48D-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-07-06T14:42:28.168333Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2295778839"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-07-06T15:16:14.387185"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["59442490"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_027675_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419227.341961,-3214389.295689,5811138.224774,2021-07-06T15:16:22.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365793.557219,-3179427.554851,5852131.568838,2021-07-06T15:16:12.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.473763,-3474.343113,-4132.197432,2021-07-06T15:16:22.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.172706,-3517.944891,-4066.394607,2021-07-06T15:16:12.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:12Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:12Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210706T151559_20210706T151626_027675_034D8E_C48D/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210706T151559_20210706T151626_027675_034D8E_C48D/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210706T151559_20210706T151626_027675_034D8E_C48D-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365793.557219, -3179427.554851, 5852131.568838], + "prePositionTime": "2021-07-06T15:16:12.000000Z", + "postPosition": + [-2419227.341961, -3214389.295689, 5811138.224774], + "postPositionTime": "2021-07-06T15:16:22.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.172706, -3517.944891, -4066.394607], + "preVelocityTime": "2021-07-06T15:16:12.000000", + "postVelocity": [-5332.473763, -3474.343113, -4132.197432], + "postVelocityTime": "2021-07-06T15:16:22.000000", + }, + }, + "ascendingNodeTime": "2021-07-06T14:42:28.168333Z", + "relative_start_time": 2027.3659129142761, + "relative_center_time": 2028.9271078109741, + "relative_end_time": 2030.4883029460907, + "relative_sv_pre_time": 2023.8316669464111, + "relative_sv_post_time": 2033.8316669464111, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210718T151615_VV_8D91-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_027850_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 27850, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210718T151615_VV_8D91-BURST", + "sensor": "C-SAR", + "startTime": "2021-07-18T15:16:16.401693Z", + "stopTime": "2021-07-18T15:16:19.524083Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210718T151600_20210718T151627_027850_0352C1_8D91/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210718T151615_VV_8D91-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 59818378, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-07-18T15:16:15.254632", + "azimuthAnxTime": "2026.2306643276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210718T151600_20210718T151627_027850_0352C1_8D91/IW3/VV/5.xml", + ], + "temporalBaseline": 1068, + "perpendicularBaseline": -24, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709363445-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210718T151615_VV_8D91-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:41.667Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-07-18T15:16:16.401693Z", + "EndingDateTime": "2021-07-18T15:16:19.524083Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 27850 }], + "GranuleUR": "S1_372326_IW3_20210718T151615_VV_8D91-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-07-18T14:42:29.032476Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2306643276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-07-18T15:16:15.254632"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["59818378"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_027850_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419198.644176,-3214437.118704,5811110.310346,2021-07-18T15:16:23.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365763.887803,-3179476.536031,5852103.779109,2021-07-18T15:16:13.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.570939,-3474.22686,-4132.209892,2021-07-18T15:16:23.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.269841,-3517.829489,-4066.407069,2021-07-18T15:16:13.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:41Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:41Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210718T151600_20210718T151627_027850_0352C1_8D91/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210718T151600_20210718T151627_027850_0352C1_8D91/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210718T151600_20210718T151627_027850_0352C1_8D91-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365763.887803, -3179476.536031, 5852103.779109], + "prePositionTime": "2021-07-18T15:16:13.000000Z", + "postPosition": + [-2419198.644176, -3214437.118704, 5811110.310346], + "postPositionTime": "2021-07-18T15:16:23.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.269841, -3517.829489, -4066.407069], + "preVelocityTime": "2021-07-18T15:16:13.000000", + "postVelocity": [-5332.570939, -3474.22686, -4132.209892], + "postVelocityTime": "2021-07-18T15:16:23.000000", + }, + }, + "ascendingNodeTime": "2021-07-18T14:42:29.032476Z", + "relative_start_time": 2027.369217157364, + "relative_center_time": 2028.930412054062, + "relative_end_time": 2030.49160695076, + "relative_sv_pre_time": 2023.9675240516663, + "relative_sv_post_time": 2033.9675240516663, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210730T151616_VV_CC34-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_028025_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 28025, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210730T151616_VV_CC34-BURST", + "sensor": "C-SAR", + "startTime": "2021-07-30T15:16:17.177587Z", + "stopTime": "2021-07-30T15:16:20.299977Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210730T151601_20210730T151628_028025_0357E0_CC34/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210730T151616_VV_CC34-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 60194265, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-07-30T15:16:16.030528", + "azimuthAnxTime": "2026.2263977713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210730T151601_20210730T151628_028025_0357E0_CC34/IW3/VV/5.xml", + ], + "temporalBaseline": 1080, + "perpendicularBaseline": 9, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709371838-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210730T151616_VV_CC34-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:09.121Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-07-30T15:16:17.177587Z", + "EndingDateTime": "2021-07-30T15:16:20.299977Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 28025 }], + "GranuleUR": "S1_372326_IW3_20210730T151616_VV_CC34-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-07-30T14:42:29.814589Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2263977713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-07-30T15:16:16.030528"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["60194265"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_028025_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419245.245553,-3214439.278528,5811113.128085,2021-07-30T15:16:24.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365811.114378,-3179478.348495,5852106.661619,2021-07-30T15:16:14.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.508279,-3474.261781,-4132.216117,2021-07-30T15:16:24.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.207436,-3517.864057,-4066.413795,2021-07-30T15:16:14.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:08Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:08Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210730T151601_20210730T151628_028025_0357E0_CC34/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210730T151601_20210730T151628_028025_0357E0_CC34/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210730T151601_20210730T151628_028025_0357E0_CC34-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365811.114378, -3179478.348495, 5852106.661619], + "prePositionTime": "2021-07-30T15:16:14.000000Z", + "postPosition": + [-2419245.245553, -3214439.278528, 5811113.128085], + "postPositionTime": "2021-07-30T15:16:24.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.207436, -3517.864057, -4066.413795], + "preVelocityTime": "2021-07-30T15:16:14.000000", + "postVelocity": [-5332.508279, -3474.261781, -4132.216117], + "postVelocityTime": "2021-07-30T15:16:24.000000", + }, + }, + "ascendingNodeTime": "2021-07-30T14:42:29.814589Z", + "relative_start_time": 2027.362998008728, + "relative_center_time": 2028.924192905426, + "relative_end_time": 2030.4853880405426, + "relative_sv_pre_time": 2024.18541097641, + "relative_sv_post_time": 2034.18541097641, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210811T151616_VV_3262-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_028200_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 28200, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210811T151616_VV_3262-BURST", + "sensor": "C-SAR", + "startTime": "2021-08-11T15:16:17.782552Z", + "stopTime": "2021-08-11T15:16:20.904942Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210811T151601_20210811T151628_028200_035D4A_3262/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210811T151616_VV_3262-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 60570152, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-08-11T15:16:16.633451", + "azimuthAnxTime": "2026.2289093276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210811T151601_20210811T151628_028200_035D4A_3262/IW3/VV/5.xml", + ], + "temporalBaseline": 1092, + "perpendicularBaseline": 2, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709361509-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210811T151616_VV_3262-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:35.165Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-08-11T15:16:17.782552Z", + "EndingDateTime": "2021-08-11T15:16:20.904942Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 28200 }], + "GranuleUR": "S1_372326_IW3_20210811T151616_VV_3262-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-08-11T14:42:30.414012Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2289093276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-08-11T15:16:16.633451"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["60570152"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_028200_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419218.527885,-3214415.04353,5811123.066762,2021-08-11T15:16:25.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365784.556023,-3179453.593627,5852116.559001,2021-08-11T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.492458,-3474.313841,-4132.212217,2021-08-11T15:16:25.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.191383,-3517.916006,-4066.409452,2021-08-11T15:16:15.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:34Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:34Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210811T151601_20210811T151628_028200_035D4A_3262/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210811T151601_20210811T151628_028200_035D4A_3262/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210811T151601_20210811T151628_028200_035D4A_3262-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365784.556023, -3179453.593627, 5852116.559001], + "prePositionTime": "2021-08-11T15:16:15.000000Z", + "postPosition": + [-2419218.527885, -3214415.04353, 5811123.066762], + "postPositionTime": "2021-08-11T15:16:25.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.191383, -3517.916006, -4066.409452], + "preVelocityTime": "2021-08-11T15:16:15.000000", + "postVelocity": [-5332.492458, -3474.313841, -4132.212217], + "postVelocityTime": "2021-08-11T15:16:25.000000", + }, + }, + "ascendingNodeTime": "2021-08-11T14:42:30.414012Z", + "relative_start_time": 2027.3685400485992, + "relative_center_time": 2028.9297351837158, + "relative_end_time": 2030.4909300804138, + "relative_sv_pre_time": 2024.5859880447388, + "relative_sv_post_time": 2034.5859880447388, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210823T151617_VV_3451-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_028375_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 28375, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210823T151617_VV_3451-BURST", + "sensor": "C-SAR", + "startTime": "2021-08-23T15:16:18.448873Z", + "stopTime": "2021-08-23T15:16:21.571263Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210823T151602_20210823T151629_028375_0362C2_3451/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210823T151617_VV_3451-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 60946040, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-08-23T15:16:17.301814", + "azimuthAnxTime": "2026.2316523276", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210823T151602_20210823T151629_028375_0362C2_3451/IW3/VV/5.xml", + ], + "temporalBaseline": 1104, + "perpendicularBaseline": 98, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709358239-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210823T151617_VV_3451-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:12:43.729Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-08-23T15:16:18.448873Z", + "EndingDateTime": "2021-08-23T15:16:21.571263Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 28375 }], + "GranuleUR": "S1_372326_IW3_20210823T151617_VV_3451-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-08-23T14:42:31.081067Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2316523276"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-08-23T15:16:17.301814"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["60946040"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_028375_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419309.651128,-3214351.487795,5811135.919548,2021-08-23T15:16:25.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365875.769318,-3179390.346749,5852129.447697,2021-08-23T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.482996,-3474.283425,-4132.215708,2021-08-23T15:16:25.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.182848,-3517.884668,-4066.413156,2021-08-23T15:16:15.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:12:43Z" }, + { "Type": "Update", "Date": "2023-06-16T01:12:43Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210823T151602_20210823T151629_028375_0362C2_3451/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210823T151602_20210823T151629_028375_0362C2_3451/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210823T151602_20210823T151629_028375_0362C2_3451-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365875.769318, -3179390.346749, 5852129.447697], + "prePositionTime": "2021-08-23T15:16:15.000000Z", + "postPosition": + [-2419309.651128, -3214351.487795, 5811135.919548], + "postPositionTime": "2021-08-23T15:16:25.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.182848, -3517.884668, -4066.413156], + "preVelocityTime": "2021-08-23T15:16:15.000000", + "postVelocity": [-5332.482996, -3474.283425, -4132.215708], + "postVelocityTime": "2021-08-23T15:16:25.000000", + }, + }, + "ascendingNodeTime": "2021-08-23T14:42:31.081067Z", + "relative_start_time": 2027.3678059577942, + "relative_center_time": 2028.9290008544922, + "relative_end_time": 2030.4901959896088, + "relative_sv_pre_time": 2023.918932914734, + "relative_sv_post_time": 2033.918932914734, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210904T151617_VV_E789-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_028550_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 28550, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210904T151617_VV_E789-BURST", + "sensor": "C-SAR", + "startTime": "2021-09-04T15:16:18.985036Z", + "stopTime": "2021-09-04T15:16:22.107426Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210904T151603_20210904T151630_028550_036839_E789/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210904T151617_VV_E789-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 61321927, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-09-04T15:16:17.837993", + "azimuthAnxTime": "2026.234952215", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210904T151603_20210904T151630_028550_036839_E789/IW3/VV/5.xml", + ], + "temporalBaseline": 1116, + "perpendicularBaseline": 19, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709355753-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210904T151617_VV_E789-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:20.656Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-09-04T15:16:18.985036Z", + "EndingDateTime": "2021-09-04T15:16:22.107426Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 28550 }], + "GranuleUR": "S1_372326_IW3_20210904T151617_VV_E789-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-09-04T14:42:31.613270Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.234952215"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-09-04T15:16:17.837993"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["61321927"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_028550_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419226.379444,-3214412.57336,5811138.865365,2021-09-04T15:16:26.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365791.958509,-3179451.779022,5852132.114129,2021-09-04T15:16:16.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.537377,-3474.248386,-4132.187767,2021-09-04T15:16:26.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.236326,-3517.850358,-4066.385233,2021-09-04T15:16:16.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:20Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:20Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210904T151603_20210904T151630_028550_036839_E789/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210904T151603_20210904T151630_028550_036839_E789/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210904T151603_20210904T151630_028550_036839_E789-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365791.958509, -3179451.779022, 5852132.114129], + "prePositionTime": "2021-09-04T15:16:16.000000Z", + "postPosition": + [-2419226.379444, -3214412.57336, 5811138.865365], + "postPositionTime": "2021-09-04T15:16:26.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.236326, -3517.850358, -4066.385233], + "preVelocityTime": "2021-09-04T15:16:16.000000", + "postVelocity": [-5332.537377, -3474.248386, -4132.187767], + "postVelocityTime": "2021-09-04T15:16:26.000000", + }, + }, + "ascendingNodeTime": "2021-09-04T14:42:31.613270Z", + "relative_start_time": 2027.3717658519745, + "relative_center_time": 2028.9329607486725, + "relative_end_time": 2030.494155883789, + "relative_sv_pre_time": 2024.3867299556732, + "relative_sv_post_time": 2034.3867299556732, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210916T151618_VV_2CE5-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_028725_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 28725, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210916T151618_VV_2CE5-BURST", + "sensor": "C-SAR", + "startTime": "2021-09-16T15:16:19.431386Z", + "stopTime": "2021-09-16T15:16:22.553776Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210916T151603_20210916T151630_028725_036D98_2CE5/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210916T151618_VV_2CE5-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 61697814, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-09-16T15:16:18.278162", + "azimuthAnxTime": "2026.2279605461", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210916T151603_20210916T151630_028725_036D98_2CE5/IW3/VV/5.xml", + ], + "temporalBaseline": 1128, + "perpendicularBaseline": 7, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709366553-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210916T151618_VV_2CE5-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:41.850Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-09-16T15:16:19.431386Z", + "EndingDateTime": "2021-09-16T15:16:22.553776Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 28725 }], + "GranuleUR": "S1_372326_IW3_20210916T151618_VV_2CE5-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-09-16T14:42:32.062415Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2279605461"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-09-16T15:16:18.278162"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["61697814"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_028725_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419213.106716,-3214441.288545,5811145.112179,2021-09-16T15:16:26.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365778.654688,-3179480.622081,5852138.207824,2021-09-16T15:16:16.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.540639,-3474.235528,-4132.172297,2021-09-16T15:16:26.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.239297,-3517.837619,-4066.370072,2021-09-16T15:16:16.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:41Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:41Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210916T151603_20210916T151630_028725_036D98_2CE5/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210916T151603_20210916T151630_028725_036D98_2CE5/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210916T151603_20210916T151630_028725_036D98_2CE5-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365778.654688, -3179480.622081, 5852138.207824], + "prePositionTime": "2021-09-16T15:16:16.000000Z", + "postPosition": + [-2419213.106716, -3214441.288545, 5811145.112179], + "postPositionTime": "2021-09-16T15:16:26.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.239297, -3517.837619, -4066.370072], + "preVelocityTime": "2021-09-16T15:16:16.000000", + "postVelocity": [-5332.540639, -3474.235528, -4132.172297], + "postVelocityTime": "2021-09-16T15:16:26.000000", + }, + }, + "ascendingNodeTime": "2021-09-16T14:42:32.062415Z", + "relative_start_time": 2027.3689711093903, + "relative_center_time": 2028.9301660060883, + "relative_end_time": 2030.4913611412048, + "relative_sv_pre_time": 2023.9375851154327, + "relative_sv_post_time": 2033.9375851154327, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20210928T151618_VV_2B9C-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0402_0407_028900_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 28900, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20210928T151618_VV_2B9C-BURST", + "sensor": "C-SAR", + "startTime": "2021-09-28T15:16:19.790776Z", + "stopTime": "2021-09-28T15:16:22.913166Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210928T151603_20210928T151630_028900_0372F6_2B9C/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20210928T151618_VV_2B9C-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 62073702, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-09-28T15:16:18.641679", + "azimuthAnxTime": "2026.2384286587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210928T151603_20210928T151630_028900_0372F6_2B9C/IW3/VV/5.xml", + ], + "temporalBaseline": 1140, + "perpendicularBaseline": 15, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709345555-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20210928T151618_VV_2B9C-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:09:37.947Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-09-28T15:16:19.790776Z", + "EndingDateTime": "2021-09-28T15:16:22.913166Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 28900 }], + "GranuleUR": "S1_372326_IW3_20210928T151618_VV_2B9C-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-09-28T14:42:32.412545Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2384286587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-09-28T15:16:18.641679"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["62073702"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0402_0407_028900_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419160.430492,-3214407.016687,5811204.211847,2021-09-28T15:16:27.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365725.517042,-3179446.451431,5852196.495914,2021-09-28T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.587146,-3474.225662,-4132.091246,2021-09-28T15:16:27.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.285044,-3517.827214,-4066.288782,2021-09-28T15:16:17.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:09:37Z" }, + { "Type": "Update", "Date": "2023-06-16T01:09:37Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210928T151603_20210928T151630_028900_0372F6_2B9C/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20210928T151603_20210928T151630_028900_0372F6_2B9C/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20210928T151603_20210928T151630_028900_0372F6_2B9C-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365725.517042, -3179446.451431, 5852196.495914], + "prePositionTime": "2021-09-28T15:16:17.000000Z", + "postPosition": + [-2419160.430492, -3214407.016687, 5811204.211847], + "postPositionTime": "2021-09-28T15:16:27.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.285044, -3517.827214, -4066.288782], + "preVelocityTime": "2021-09-28T15:16:17.000000", + "postVelocity": [-5332.587146, -3474.225662, -4132.091246], + "postVelocityTime": "2021-09-28T15:16:27.000000", + }, + }, + "ascendingNodeTime": "2021-09-28T14:42:32.412545Z", + "relative_start_time": 2027.378231048584, + "relative_center_time": 2028.9394261837006, + "relative_end_time": 2030.5006210803986, + "relative_sv_pre_time": 2024.587455034256, + "relative_sv_post_time": 2034.587455034256, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211010T151618_VV_849C-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_029075_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 29075, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211010T151618_VV_849C-BURST", + "sensor": "C-SAR", + "startTime": "2021-10-10T15:16:19.956655Z", + "stopTime": "2021-10-10T15:16:23.079045Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211010T151604_20211010T151631_029075_037835_849C/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20211010T151618_VV_849C-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 62449589, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-10-10T15:16:18.809612", + "azimuthAnxTime": "2026.2478986587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211010T151604_20211010T151631_029075_037835_849C/IW3/VV/5.xml", + ], + "temporalBaseline": 1152, + "perpendicularBaseline": 38, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709349942-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211010T151618_VV_849C-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:14:28.004Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-10-10T15:16:19.956655Z", + "EndingDateTime": "2021-10-10T15:16:23.079045Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29075 }], + "GranuleUR": "S1_372326_IW3_20211010T151618_VV_849C-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-10-10T14:42:32.573006Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2478986587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-10-10T15:16:18.809612"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["62449589"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_029075_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419155.778883,-3214376.541808,5811228.927613,2021-10-10T15:16:27.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365721.09422,-3179415.598805,5852221.052324,2021-10-10T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.564341,-3474.263648,-4132.075371,2021-10-10T15:16:27.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.262073,-3517.864754,-4066.272767,2021-10-10T15:16:17.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:14:27Z" }, + { "Type": "Update", "Date": "2023-06-16T01:14:27Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211010T151604_20211010T151631_029075_037835_849C/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211010T151604_20211010T151631_029075_037835_849C/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211010T151604_20211010T151631_029075_037835_849C-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365721.09422, -3179415.598805, 5852221.052324], + "prePositionTime": "2021-10-10T15:16:17.000000Z", + "postPosition": + [-2419155.778883, -3214376.541808, 5811228.927613], + "postPositionTime": "2021-10-10T15:16:27.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.262073, -3517.864754, -4066.272767], + "preVelocityTime": "2021-10-10T15:16:17.000000", + "postVelocity": [-5332.564341, -3474.263648, -4132.075371], + "postVelocityTime": "2021-10-10T15:16:27.000000", + }, + }, + "ascendingNodeTime": "2021-10-10T14:42:32.573006Z", + "relative_start_time": 2027.383649110794, + "relative_center_time": 2028.944844007492, + "relative_end_time": 2030.5060391426086, + "relative_sv_pre_time": 2024.426994085312, + "relative_sv_post_time": 2034.426994085312, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211022T151619_VV_0FCD-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_029250_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 29250, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211022T151619_VV_0FCD-BURST", + "sensor": "C-SAR", + "startTime": "2021-10-22T15:16:20.190786Z", + "stopTime": "2021-10-22T15:16:23.313176Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211022T151604_20211022T151631_029250_037DA3_0FCD/IW3/VV/5.tiff", + "pgeVersion": "003.31", + "fileName": "S1_372326_IW3_20211022T151619_VV_0FCD-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 62825477, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-10-22T15:16:19.043727", + "azimuthAnxTime": "2026.2531451024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211022T151604_20211022T151631_029250_037DA3_0FCD/IW3/VV/5.xml", + ], + "temporalBaseline": 1164, + "perpendicularBaseline": 142, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709370603-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211022T151619_VV_0FCD-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:37.831Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-10-22T15:16:20.190786Z", + "EndingDateTime": "2021-10-22T15:16:23.313176Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29250 }], + "GranuleUR": "S1_372326_IW3_20211022T151619_VV_0FCD-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-10-22T14:42:32.799820Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2531451024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-10-22T15:16:19.043727"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["62825477"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_029250_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419194.409325,-3214258.94023,5811288.455493,2021-10-22T15:16:27.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365759.815218,-3179297.70268,5852280.108344,2021-10-22T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.555128,-3474.293853,-4132.028402,2021-10-22T15:16:27.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.253157,-3517.893493,-4066.225377,2021-10-22T15:16:17.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:37Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:37Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.31" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211022T151604_20211022T151631_029250_037DA3_0FCD/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211022T151604_20211022T151631_029250_037DA3_0FCD/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211022T151604_20211022T151631_029250_037DA3_0FCD-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365759.815218, -3179297.70268, 5852280.108344], + "prePositionTime": "2021-10-22T15:16:17.000000Z", + "postPosition": + [-2419194.409325, -3214258.94023, 5811288.455493], + "postPositionTime": "2021-10-22T15:16:27.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.253157, -3517.893493, -4066.225377], + "preVelocityTime": "2021-10-22T15:16:17.000000", + "postVelocity": [-5332.555128, -3474.293853, -4132.028402], + "postVelocityTime": "2021-10-22T15:16:27.000000", + }, + }, + "ascendingNodeTime": "2021-10-22T14:42:32.799820Z", + "relative_start_time": 2027.3909659385681, + "relative_center_time": 2028.952160835266, + "relative_end_time": 2030.5133559703827, + "relative_sv_pre_time": 2024.200180053711, + "relative_sv_post_time": 2034.200180053711, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211103T151618_VV_2E94-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_029425_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 29425, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211103T151618_VV_2E94-BURST", + "sensor": "C-SAR", + "startTime": "2021-11-03T15:16:19.854146Z", + "stopTime": "2021-11-03T15:16:22.976536Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211103T151603_20211103T151630_029425_038306_2E94/IW3/VV/5.tiff", + "pgeVersion": "003.40", + "fileName": "S1_372326_IW3_20211103T151618_VV_2E94-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 63201364, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-11-03T15:16:18.709157", + "azimuthAnxTime": "2026.2604357713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211103T151603_20211103T151630_029425_038306_2E94/IW3/VV/5.xml", + ], + "temporalBaseline": 1176, + "perpendicularBaseline": 119, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709363332-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211103T151618_VV_2E94-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:19.850Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-11-03T15:16:19.854146Z", + "EndingDateTime": "2021-11-03T15:16:22.976536Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29425 }], + "GranuleUR": "S1_372326_IW3_20211103T151618_VV_2E94-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-11-03T14:42:32.457745Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2604357713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-11-03T15:16:18.709157"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["63201364"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_029425_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419101.352838,-3214239.981762,5811346.119393,2021-11-03T15:16:27.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365667.45315,-3179277.217767,5852337.141517,2021-11-03T15:16:17.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.48636,-3474.446726,-4131.965563,2021-11-03T15:16:27.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.183053,-3518.045928,-4066.162088,2021-11-03T15:16:17.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:19Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:19Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.40" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211103T151603_20211103T151630_029425_038306_2E94/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211103T151603_20211103T151630_029425_038306_2E94/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211103T151603_20211103T151630_029425_038306_2E94-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365667.45315, -3179277.217767, 5852337.141517], + "prePositionTime": "2021-11-03T15:16:17.000000Z", + "postPosition": + [-2419101.352838, -3214239.981762, 5811346.119393], + "postPositionTime": "2021-11-03T15:16:27.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.183053, -3518.045928, -4066.162088], + "preVelocityTime": "2021-11-03T15:16:17.000000", + "postVelocity": [-5332.48636, -3474.446726, -4131.965563], + "postVelocityTime": "2021-11-03T15:16:27.000000", + }, + }, + "ascendingNodeTime": "2021-11-03T14:42:32.457745Z", + "relative_start_time": 2027.3964009284973, + "relative_center_time": 2028.9575958251953, + "relative_end_time": 2030.518790960312, + "relative_sv_pre_time": 2024.5422549247742, + "relative_sv_post_time": 2034.5422549247742, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211115T151618_VV_025B-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_029600_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 29600, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211115T151618_VV_025B-BURST", + "sensor": "C-SAR", + "startTime": "2021-11-15T15:16:19.775975Z", + "stopTime": "2021-11-15T15:16:22.898365Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211115T151603_20211115T151630_029600_038857_025B/IW3/VV/5.tiff", + "pgeVersion": "003.40", + "fileName": "S1_372326_IW3_20211115T151618_VV_025B-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 63577251, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-11-15T15:16:18.628931", + "azimuthAnxTime": "2026.2631056587", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211115T151603_20211115T151630_029600_038857_025B/IW3/VV/5.xml", + ], + "temporalBaseline": 1188, + "perpendicularBaseline": 94, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709360948-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211115T151618_VV_025B-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:05.234Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-11-15T15:16:19.775975Z", + "EndingDateTime": "2021-11-15T15:16:22.898365Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29600 }], + "GranuleUR": "S1_372326_IW3_20211115T151618_VV_025B-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-11-15T14:42:32.374114Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2631056587"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-11-15T15:16:18.628931"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["63577251"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_029600_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419085.274141,-3214279.652796,5811339.514186,2021-11-15T15:16:26.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365650.576464,-3179317.993229,5852330.475176,2021-11-15T15:16:16.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.566221,-3474.336057,-4131.959318,2021-11-15T15:16:26.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.262807,-3517.935716,-4066.156116,2021-11-15T15:16:16.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:05Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:05Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.40" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211115T151603_20211115T151630_029600_038857_025B/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211115T151603_20211115T151630_029600_038857_025B/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211115T151603_20211115T151630_029600_038857_025B-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365650.576464, -3179317.993229, 5852330.475176], + "prePositionTime": "2021-11-15T15:16:16.000000Z", + "postPosition": + [-2419085.274141, -3214279.652796, 5811339.514186], + "postPositionTime": "2021-11-15T15:16:26.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.262807, -3517.935716, -4066.156116], + "preVelocityTime": "2021-11-15T15:16:16.000000", + "postVelocity": [-5332.566221, -3474.336057, -4131.959318], + "postVelocityTime": "2021-11-15T15:16:26.000000", + }, + }, + "ascendingNodeTime": "2021-11-15T14:42:32.374114Z", + "relative_start_time": 2027.4018609523773, + "relative_center_time": 2028.963056087494, + "relative_end_time": 2030.524250984192, + "relative_sv_pre_time": 2023.62588596344, + "relative_sv_post_time": 2033.62588596344, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211127T151618_VV_4D4C-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_029775_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 29775, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211127T151618_VV_4D4C-BURST", + "sensor": "C-SAR", + "startTime": "2021-11-27T15:16:19.300481Z", + "stopTime": "2021-11-27T15:16:22.422871Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211127T151603_20211127T151630_029775_038DCF_4D4C/IW3/VV/5.tiff", + "pgeVersion": "003.40", + "fileName": "S1_372326_IW3_20211127T151618_VV_4D4C-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 63953139, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-11-27T15:16:18.149310", + "azimuthAnxTime": "2026.2644781024", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211127T151603_20211127T151630_029775_038DCF_4D4C/IW3/VV/5.xml", + ], + "temporalBaseline": 1200, + "perpendicularBaseline": 77, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709370031-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211127T151618_VV_4D4C-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:04.892Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-11-27T15:16:19.300481Z", + "EndingDateTime": "2021-11-27T15:16:22.422871Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29775 }], + "GranuleUR": "S1_372326_IW3_20211127T151618_VV_4D4C-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-11-27T14:42:31.897163Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2644781024"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-11-27T15:16:18.149310"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["63953139"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_029775_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419057.02387,-3214284.915887,5811350.700843,2021-11-27T15:16:26.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365621.84185,-3179323.657337,5852341.383287,2021-11-27T15:16:16.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.614817,-3474.295888,-4131.931496,2021-11-27T15:16:26.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.31111,-3517.895649,-4066.128225,2021-11-27T15:16:16.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:04Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:04Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.40" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211127T151603_20211127T151630_029775_038DCF_4D4C/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211127T151603_20211127T151630_029775_038DCF_4D4C/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211127T151603_20211127T151630_029775_038DCF_4D4C-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365621.84185, -3179323.657337, 5852341.383287], + "prePositionTime": "2021-11-27T15:16:16.000000Z", + "postPosition": + [-2419057.02387, -3214284.915887, 5811350.700843], + "postPositionTime": "2021-11-27T15:16:26.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.31111, -3517.895649, -4066.128225], + "preVelocityTime": "2021-11-27T15:16:16.000000", + "postVelocity": [-5332.614817, -3474.295888, -4131.931496], + "postVelocityTime": "2021-11-27T15:16:26.000000", + }, + }, + "ascendingNodeTime": "2021-11-27T14:42:31.897163Z", + "relative_start_time": 2027.4033181667328, + "relative_center_time": 2028.9645133018494, + "relative_end_time": 2030.5257081985474, + "relative_sv_pre_time": 2024.1028370857239, + "relative_sv_post_time": 2034.1028370857239, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211209T151617_VV_FF78-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_029950_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 29950, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211209T151617_VV_FF78-BURST", + "sensor": "C-SAR", + "startTime": "2021-12-09T15:16:18.775808Z", + "stopTime": "2021-12-09T15:16:21.898198Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211209T151602_20211209T151629_029950_039358_FF78/IW3/VV/5.tiff", + "pgeVersion": "003.40", + "fileName": "S1_372326_IW3_20211209T151617_VV_FF78-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 64329026, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-12-09T15:16:17.636984", + "azimuthAnxTime": "2026.2760614402", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211209T151602_20211209T151629_029950_039358_FF78/IW3/VV/5.xml", + ], + "temporalBaseline": 1212, + "perpendicularBaseline": 64, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709367901-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211209T151617_VV_FF78-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:11:17.835Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-12-09T15:16:18.775808Z", + "EndingDateTime": "2021-12-09T15:16:21.898198Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29950 }], + "GranuleUR": "S1_372326_IW3_20211209T151617_VV_FF78-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-12-09T14:42:31.373213Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2760614402"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-12-09T15:16:17.636984"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["64329026"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_029950_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419043.328654,-3214306.132736,5811352.986704,2021-12-09T15:16:25.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365607.925905,-3179345.189974,5852343.590115,2021-12-09T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.636985,-3474.264214,-4131.923505,2021-12-09T15:16:25.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.333088,-3517.864147,-4066.120399,2021-12-09T15:16:15.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:11:17Z" }, + { "Type": "Update", "Date": "2023-06-16T01:11:17Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.40" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211209T151602_20211209T151629_029950_039358_FF78/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211209T151602_20211209T151629_029950_039358_FF78/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211209T151602_20211209T151629_029950_039358_FF78-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], + "type": "Polygon", + }, + "baseline": + { + "stateVectors": + { + "positions": + { + "prePosition": + [-2365607.925905, -3179345.189974, 5852343.590115], + "prePositionTime": "2021-12-09T15:16:15.000000Z", + "postPosition": + [-2419043.328654, -3214306.132736, 5811352.986704], + "postPositionTime": "2021-12-09T15:16:25.000000Z", + }, + "velocities": + { + "preVelocity": [-5354.333088, -3517.864147, -4066.120399], + "preVelocityTime": "2021-12-09T15:16:15.000000", + "postVelocity": [-5332.636985, -3474.264214, -4131.923505], + "postVelocityTime": "2021-12-09T15:16:25.000000", + }, + }, + "ascendingNodeTime": "2021-12-09T14:42:31.373213Z", + "relative_start_time": 2027.4025950431824, + "relative_center_time": 2028.9637899398804, + "relative_end_time": 2030.5249848365784, + "relative_sv_pre_time": 2023.6267869472504, + "relative_sv_post_time": 2033.6267869472504, + }, + }, + { + "properties": + { + "beamModeType": "IW", + "browse": null, + "bytes": 147215404, + "centerLat": 57.04282649297329, + "centerLon": -135.917406937361, + "faradayRotation": null, + "fileID": "S1_372326_IW3_20211221T151616_VV_1C5A-BURST", + "flightDirection": "DESCENDING", + "groupID": "S1B_IWDV_0401_0408_030125_174", + "granuleType": null, + "insarStackId": null, + "md5sum": null, + "offNadirAngle": null, + "orbit": 30125, + "pathNumber": 174, + "platform": "SENTINEL-1B", + "pointingAngle": null, + "polarization": "VV", + "processingDate": null, + "processingLevel": "BURST", + "sceneName": "S1_372326_IW3_20211221T151616_VV_1C5A-BURST", + "sensor": "C-SAR", + "startTime": "2021-12-21T15:16:18.066671Z", + "stopTime": "2021-12-21T15:16:21.189061Z", + "url": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211221T151602_20211221T151629_030125_0398E3_1C5A/IW3/VV/5.tiff", + "pgeVersion": "003.40", + "fileName": "S1_372326_IW3_20211221T151616_VV_1C5A-BURST.tiff", + "frameNumber": null, + "burst": + { + "absoluteBurstID": 64704913, + "relativeBurstID": 372326, + "fullBurstID": "174_372326_IW3", + "burstIndex": 5, + "samplesPerBurst": 24229, + "subswath": "IW3", + "azimuthTime": "2021-12-21T15:16:16.923721", + "azimuthAnxTime": "2026.2561857713", + }, + "additionalUrls": + [ + "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211221T151602_20211221T151629_030125_0398E3_1C5A/IW3/VV/5.xml", + ], + "temporalBaseline": 1224, + "perpendicularBaseline": 113, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G2709369026-ASF", + "revision-id": 2, + "native-id": "S1_372326_IW3_20211221T151616_VV_1C5A-BURST", + "provider-id": "ASF", + "format": "application/vnd.nasa.cmr.umm+json", + "revision-date": "2023-06-16T01:10:07.344Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "2021-12-21T15:16:18.066671Z", + "EndingDateTime": "2021-12-21T15:16:21.189061Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 30125 }], + "GranuleUR": "S1_372326_IW3_20211221T151616_VV_1C5A-BURST", + "AdditionalAttributes": + [ + { + "Name": "ASC_NODE_TIME", + "Values": ["2021-12-21T14:42:30.662825Z"], + }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "AZIMUTH_ANX_TIME", "Values": ["2026.2561857713"] }, + { + "Name": "AZIMUTH_TIME", + "Values": ["2021-12-21T15:16:16.923721"], + }, + { "Name": "BEAM_MODE", "Values": ["IW"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": + [ + "Interferometric Wide. 250 km swath, 5 m x 20 m spatial resolution and burst synchronization for interferometry. IW is considered to be the standard mode over land masses.", + ], + }, + { "Name": "BURST_ID_ABSOLUTE", "Values": ["64704913"] }, + { "Name": "BURST_ID_FULL", "Values": ["174_372326_IW3"] }, + { "Name": "BURST_ID_RELATIVE", "Values": ["372326"] }, + { "Name": "BURST_INDEX", "Values": ["5"] }, + { "Name": "BYTE_LENGTH", "Values": ["147215404"] }, + { "Name": "BYTE_OFFSET", "Values": ["736186703"] }, + { "Name": "CENTER_LAT", "Values": ["57.04282649297329"] }, + { "Name": "CENTER_LON", "Values": ["-135.917406937361"] }, + { "Name": "GROUP_ID", "Values": ["S1B_IWDV_0401_0408_030125_174"] }, + { "Name": "LINES_PER_BURST", "Values": ["1519"] }, + { "Name": "PATH_NUMBER", "Values": ["174"] }, + { "Name": "POLARIZATION", "Values": ["VV"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { "Name": "PROCESSING_TYPE", "Values": ["BURST"] }, + { "Name": "SAMPLES_PER_BURST", "Values": ["24229"] }, + { "Name": "SUBSWATH_NAME", "Values": ["IW3"] }, + { + "Name": "SV_POSITION_POST", + "Values": + [ + "-2419030.796997,-3214218.69749,5811401.739741,2021-12-21T15:16:25.000000", + ], + }, + { + "Name": "SV_POSITION_PRE", + "Values": + [ + "-2365596.481868,-3179255.901719,5852391.980742,2021-12-21T15:16:15.000000", + ], + }, + { + "Name": "SV_VELOCITY_POST", + "Values": + [ + "-5332.528386,-3474.450049,-4131.88758,2021-12-21T15:16:25.000000", + ], + }, + { + "Name": "SV_VELOCITY_PRE", + "Values": + [ + "-5354.224132,-3518.0489,-4066.083823,2021-12-21T15:16:15.000000", + ], + }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + { + "Latitude": 57.081936, + "Longitude": -135.229996, + }, + { + "Latitude": 57.144214, + "Longitude": -135.894961, + }, + { + "Latitude": 57.200845, + "Longitude": -136.536267, + }, + { + "Latitude": 56.996278, + "Longitude": -136.593695, + }, + { + "Latitude": 56.944328, + "Longitude": -135.954563, + }, + { + "Latitude": 56.886748, + "Longitude": -135.291731, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Type": "Insert", "Date": "2023-06-16T01:10:07Z" }, + { "Type": "Update", "Date": "2023-06-16T01:10:07Z" }, + ], + "CollectionReference": + { "ShortName": "SENTINEL-1_BURSTS", "Version": "1" }, + "PGEVersionClass": + { "PGEName": "Sentinel-1 IPF", "PGEVersion": "003.40" }, + "RelatedUrls": + [ + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211221T151602_20211221T151629_030125_0398E3_1C5A/IW3/VV/5.tiff", + "Type": "USE SERVICE API", + "Description": "Use the link to extract the burst as a GeoTIFF from the input granule.", + "Format": "GeoTIFF", + }, + { + "URL": "https://sentinel1-burst.asf.alaska.edu/S1B_IW_SLC__1SDV_20211221T151602_20211221T151629_030125_0398E3_1C5A/IW3/VV/5.xml", + "Type": "USE SERVICE API", + "Description": "Use the link to extract an extended metadata file of the burst from the input granule.", + "Format": "XML", + }, + { + "URL": "https://sentinel1-burst-docs.asf.alaska.edu/", + "Type": "VIEW RELATED INFORMATION", + "Description": "Usage information for the API used to extract a burst product from a Sentinel-1 SLC granule.", + }, + ], + "InputGranules": + [ + "S1B_IW_SLC__1SDV_20211221T151602_20211221T151629_030125_0398E3_1C5A-SLC", + ], + "Platforms": + [ + { + "Instruments": + [ + { + "ShortName": "C-SAR", + "Characteristics": + [{ "Name": "LookDirection", "Value": "RIGHT" }], + }, + ], + "ShortName": "SENTINEL-1B", + }, + ], + "MetadataSpecification": + { + "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", + "Name": "UMM-G", + "Version": "1.6.5", + }, + }, + "geometry": + { + "coordinates": + [ + [ + [-135.291731, 56.886748], + [-135.229996, 57.081936], + [-135.894961, 57.144214], + [-136.536267, 57.200845], + [-136.593695, 56.996278], + [-135.954563, 56.944328], + [-135.291731, 56.886748], + ], + ], "type": "Polygon", }, "baseline": @@ -512,25 +46942,27 @@ { "positions": { - "prePosition": [-3095169.198295, -2457668.980221, 5859219.605349], - "prePositionTime": "2016-08-25T02:37:43.000000", - "postPosition": [-3061451.959187, -2402862.905398, 5899436.043045], - "postPositionTime": "2016-08-25T02:37:53.000000", + "prePosition": + [-2365596.481868, -3179255.901719, 5852391.980742], + "prePositionTime": "2021-12-21T15:16:15.000000Z", + "postPosition": + [-2419030.796997, -3214218.69749, 5811401.739741], + "postPositionTime": "2021-12-21T15:16:25.000000Z", }, "velocities": { - "preVelocity": [3350.457923, 5469.398314, 4054.777958], - "preVelocityTime": "2016-08-25T02:37:43.000000", - "postVelocity": [3392.932194, 5491.703858, 3988.434266], - "postVelocityTime": "2016-08-25T02:37:53.000000", + "preVelocity": [-5354.224132, -3518.0489, -4066.083823], + "preVelocityTime": "2021-12-21T15:16:15.000000", + "postVelocity": [-5332.528386, -3474.450049, -4131.88758], + "postVelocityTime": "2021-12-21T15:16:25.000000", }, }, - "ascendingNodeTime": "2016-08-25T02:22:08.006815", - "relative_start_time": -27862.889626026154, - "relative_center_time": -27862.36848640442, - "relative_end_time": -27861.847347021103, - "relative_sv_pre_time": 934.993185043335, - "relative_sv_post_time": 944.993185043335, + "ascendingNodeTime": "2021-12-21T14:42:30.662825Z", + "relative_start_time": 2027.4038457870483, + "relative_center_time": 2028.9650406837463, + "relative_end_time": 2030.526235818863, + "relative_sv_pre_time": 2024.3371748924255, + "relative_sv_post_time": 2034.3371748924255, }, }, ] diff --git a/tests/yml_tests/test_baseline_search.yml b/tests/yml_tests/test_baseline_search.yml index 89f69bab..668b8e8b 100644 --- a/tests/yml_tests/test_baseline_search.yml +++ b/tests/yml_tests/test_baseline_search.yml @@ -11,9 +11,6 @@ tests: - Test Get test-invalid-insarStackID Stack Params: product: Alos_response.yml -- Test Get test-invalid-platform Stack Params: - product: S1_response.yml - - Test Get test-temporal-baseline test-product-stack SLC Params: product: S1_response.yml stack: S1_baseline_stack.yml From 5aae1c47e7ff1dd6443ee6b7f27922c48100974c Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 5 Dec 2023 17:22:27 -0900 Subject: [PATCH 24/95] removes old test case --- tests/BaselineSearch/Stack/test_stack.py | 3 --- tests/yml_tests/test_stack.yml | 4 ---- 2 files changed, 7 deletions(-) diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index a0ce20df..1a71dda0 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -54,9 +54,6 @@ def run_test_valid_state_vectors(reference, output): assert output == product.valid_state_vectors() return - with pytest.raises(ValueError): - reference.valid_state_vectors() - def clear_baseline(resource, product: ASFProduct): # Baseline values can be restored from UMM in asfProduct constructor, # this erases them again if the resource omitted them from the product diff --git a/tests/yml_tests/test_stack.yml b/tests/yml_tests/test_stack.yml index 4bcfdef6..87368a45 100644 --- a/tests/yml_tests/test_stack.yml +++ b/tests/yml_tests/test_stack.yml @@ -57,10 +57,6 @@ tests: output_stack: Fairbanks_ers_stack.yml error: null -- test-valid-state-vectors error: - reference: null - output: null - - test-valid-state-vectors fairbanks slc: reference: Fairbanks_SLC.yml output: True From a0148d75ba7256c4e0339fbac4563adb6e96bbd8 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 6 Dec 2023 11:44:23 -0900 Subject: [PATCH 25/95] more test cases for more products, updated test cases, commented out unused code --- asf_search/CMR/__init__.py | 2 +- asf_search/CMR/translate.py | 232 +- asf_search/Products/ERSProduct.py | 2 + asf_search/Products/JERSProduct.py | 3 +- asf_search/Products/RadarsatProduct.py | 1 + asf_search/search/__init__.py | 2 +- asf_search/search/baseline_search.py | 40 - tests/BaselineSearch/test_baseline_search.py | 2 +- tests/Search/test_search.py | 9 +- tests/yml_tests/Resources/JERS.yml | 217 ++ tests/yml_tests/Resources/JERS_stack.yml | 2251 ++++++++++++++++++ tests/yml_tests/Resources/RADARSAT.yml | 1 + tests/yml_tests/Resources/RADARSAT_stack.yml | 1 + tests/yml_tests/test_baseline_search.yml | 8 + tests/yml_tests/test_search.yml | 9 + 15 files changed, 2617 insertions(+), 163 deletions(-) create mode 100644 tests/yml_tests/Resources/JERS.yml create mode 100644 tests/yml_tests/Resources/JERS_stack.yml create mode 100644 tests/yml_tests/Resources/RADARSAT.yml create mode 100644 tests/yml_tests/Resources/RADARSAT_stack.yml diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index c54918e5..11ef6389 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -1,6 +1,6 @@ from .MissionList import get_campaigns from .subquery import build_subqueries -from .translate import translate_product, translate_opts, get_additional_fields +from .translate import translate_opts, get_additional_fields from .field_map import field_map from .UMMFields import umm_property_paths, umm_property_typecasting from .datasets import dataset_collections diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index 7c37823b..b620df9b 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -145,131 +145,131 @@ def use_asf_frame(cmr_opts): return cmr_opts -def translate_product(item: dict) -> dict: - try: - coordinates = item['umm']['SpatialExtent']['HorizontalSpatialDomain']['Geometry']['GPolygons'][0]['Boundary']['Points'] - coordinates = [[c['Longitude'], c['Latitude']] for c in coordinates] - geometry = {'coordinates': [coordinates], 'type': 'Polygon'} - except KeyError as e: - geometry = {'coordinates': None, 'type': 'Polygon'} - - umm = item.get('umm') - - properties = { - 'beamModeType': get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0), - 'browse': get(umm, 'RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])), - 'bytes': cast(int, try_round_float(get(umm, 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0))), - 'centerLat': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0)), - 'centerLon': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0)), - 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), - 'fileID': get(umm, 'GranuleUR'), - 'flightDirection': get(umm, 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0), - 'groupID': get(umm, 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0), - 'granuleType': get(umm, 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0), - 'insarStackId': get(umm, 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0), - 'md5sum': get(umm, 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0), - 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), - 'orbit': cast(int, get(umm, 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber')), - 'pathNumber': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0)), - 'platform': get(umm, 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0), - 'pointingAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0)), - 'polarization': get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0), - 'processingDate': get(umm, 'DataGranule', 'ProductionDateTime'), - 'processingLevel': get(umm, 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0), - 'sceneName': get(umm, 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'), - 'sensor': get(umm, 'Platforms', 0, 'Instruments', 0, 'ShortName'), - 'startTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'), - 'stopTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'), - 'url': get(umm, 'RelatedUrls', ('Type', 'GET DATA'), 'URL'), - 'pgeVersion': get(umm, 'PGEVersionClass', 'PGEVersion') - } +# def translate_product(item: dict) -> dict: +# try: +# coordinates = item['umm']['SpatialExtent']['HorizontalSpatialDomain']['Geometry']['GPolygons'][0]['Boundary']['Points'] +# coordinates = [[c['Longitude'], c['Latitude']] for c in coordinates] +# geometry = {'coordinates': [coordinates], 'type': 'Polygon'} +# except KeyError as e: +# geometry = {'coordinates': None, 'type': 'Polygon'} + +# umm = item.get('umm') + +# properties = { +# 'beamModeType': get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0), +# 'browse': get(umm, 'RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])), +# 'bytes': cast(int, try_round_float(get(umm, 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0))), +# 'centerLat': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0)), +# 'centerLon': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0)), +# 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), +# 'fileID': get(umm, 'GranuleUR'), +# 'flightDirection': get(umm, 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0), +# 'groupID': get(umm, 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0), +# 'granuleType': get(umm, 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0), +# 'insarStackId': get(umm, 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0), +# 'md5sum': get(umm, 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0), +# 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), +# 'orbit': cast(int, get(umm, 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber')), +# 'pathNumber': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0)), +# 'platform': get(umm, 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0), +# 'pointingAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0)), +# 'polarization': get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0), +# 'processingDate': get(umm, 'DataGranule', 'ProductionDateTime'), +# 'processingLevel': get(umm, 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0), +# 'sceneName': get(umm, 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'), +# 'sensor': get(umm, 'Platforms', 0, 'Instruments', 0, 'ShortName'), +# 'startTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'), +# 'stopTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'), +# 'url': get(umm, 'RelatedUrls', ('Type', 'GET DATA'), 'URL'), +# 'pgeVersion': get(umm, 'PGEVersionClass', 'PGEVersion') +# } - if properties['beamModeType'] is None: - properties['beamModeType'] = get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - - positions = {} - velocities = {} - positions['prePosition'], positions['prePositionTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) - positions['postPosition'], positions['postPositionTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) - velocities['preVelocity'], velocities['preVelocityTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) - velocities['postVelocity'], velocities['postVelocityTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) - ascendingNodeTime = get(umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) - - for key in ['prePositionTime','postPositionTime','preVelocityTime','postVelocityTime']: - if positions.get(key) is not None: - if not positions.get(key).endswith('Z'): - positions[key] += 'Z' +# if properties['beamModeType'] is None: +# properties['beamModeType'] = get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) + +# positions = {} +# velocities = {} +# positions['prePosition'], positions['prePositionTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) +# positions['postPosition'], positions['postPositionTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) +# velocities['preVelocity'], velocities['preVelocityTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) +# velocities['postVelocity'], velocities['postVelocityTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) +# ascendingNodeTime = get(umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) + +# for key in ['prePositionTime','postPositionTime','preVelocityTime','postVelocityTime']: +# if positions.get(key) is not None: +# if not positions.get(key).endswith('Z'): +# positions[key] += 'Z' - if ascendingNodeTime is not None: - if not ascendingNodeTime.endswith('Z'): - ascendingNodeTime += 'Z' +# if ascendingNodeTime is not None: +# if not ascendingNodeTime.endswith('Z'): +# ascendingNodeTime += 'Z' - stateVectors = { - 'positions': positions, - 'velocities': velocities - } +# stateVectors = { +# 'positions': positions, +# 'velocities': velocities +# } - insarBaseline = cast(float, get(umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) +# insarBaseline = cast(float, get(umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - baseline = {} - if None not in stateVectors['positions'].values() and len(stateVectors.items()) > 0: - baseline['stateVectors'] = stateVectors - baseline['ascendingNodeTime'] = ascendingNodeTime - elif insarBaseline is not None: - baseline['insarBaseline'] = insarBaseline - else: - baseline = None - - if properties['url'] is not None: - properties['fileName'] = properties['url'].split('/')[-1] - else: - properties['fileName'] = None - - if properties['platform'] is None: - properties['platform'] = get(umm, 'Platforms', 0, 'ShortName') - - asf_frame_platforms = ['Sentinel-1A', 'Sentinel-1B', 'ALOS', 'SENTINEL-1A', 'SENTINEL-1B', 'Sentinel-1 Interferogram', 'Sentinel-1 Interferogram (BETA)', 'ERS-1', 'ERS-2', 'JERS-1', 'RADARSAT-1'] - if properties['platform'] in asf_frame_platforms: - properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0)) - else: - properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0)) - - if properties['processingLevel'] == 'BURST': - burst = { - 'absoluteBurstID': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0)), - 'relativeBurstID': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0)), - 'fullBurstID': get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0), - 'burstIndex': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0)), - 'samplesPerBurst': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0)), - 'subswath': get(umm, 'AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0), - 'azimuthTime': get(umm, 'AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0), - 'azimuthAnxTime': get(umm, 'AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0), - } - properties['burst'] = burst - properties['sceneName'] = properties['fileID'] - properties['bytes'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0)) - - urls = get(umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) - if urls is not None: - properties['url'] = urls[0] - properties['fileName'] = properties['fileID'] + '.' + urls[0].split('.')[-1] - properties['additionalUrls'] = [urls[1]] +# baseline = {} +# if None not in stateVectors['positions'].values() and len(stateVectors.items()) > 0: +# baseline['stateVectors'] = stateVectors +# baseline['ascendingNodeTime'] = ascendingNodeTime +# elif insarBaseline is not None: +# baseline['insarBaseline'] = insarBaseline +# else: +# baseline = None + +# if properties['url'] is not None: +# properties['fileName'] = properties['url'].split('/')[-1] +# else: +# properties['fileName'] = None + +# if properties['platform'] is None: +# properties['platform'] = get(umm, 'Platforms', 0, 'ShortName') + +# asf_frame_platforms = ['Sentinel-1A', 'Sentinel-1B', 'ALOS', 'SENTINEL-1A', 'SENTINEL-1B', 'Sentinel-1 Interferogram', 'Sentinel-1 Interferogram (BETA)', 'ERS-1', 'ERS-2', 'JERS-1', 'RADARSAT-1'] +# if properties['platform'] in asf_frame_platforms: +# properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0)) +# else: +# properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0)) + +# if properties['processingLevel'] == 'BURST': +# burst = { +# 'absoluteBurstID': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0)), +# 'relativeBurstID': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0)), +# 'fullBurstID': get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0), +# 'burstIndex': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0)), +# 'samplesPerBurst': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0)), +# 'subswath': get(umm, 'AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0), +# 'azimuthTime': get(umm, 'AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0), +# 'azimuthAnxTime': get(umm, 'AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0), +# } +# properties['burst'] = burst +# properties['sceneName'] = properties['fileID'] +# properties['bytes'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0)) + +# urls = get(umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) +# if urls is not None: +# properties['url'] = urls[0] +# properties['fileName'] = properties['fileID'] + '.' + urls[0].split('.')[-1] +# properties['additionalUrls'] = [urls[1]] - if (fileID:=properties.get('fileID')): - if fileID.startswith('OPERA'): - properties['beamMode'] = get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - accessUrls = [*get(umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *get(umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] - properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') - and not url.startswith('s3://') - and not 's3credentials' in url - and not url.endswith('.png') - and url != properties['url']]) - properties['polarization'] = get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') +# if (fileID:=properties.get('fileID')): +# if fileID.startswith('OPERA'): +# properties['beamMode'] = get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) +# accessUrls = [*get(umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *get(umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] +# properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') +# and not url.startswith('s3://') +# and not 's3credentials' in url +# and not url.endswith('.png') +# and url != properties['url']]) +# properties['polarization'] = get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') - properties['operaBurstID'] = get(umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) +# properties['operaBurstID'] = get(umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) - return {'geometry': geometry, 'properties': properties, 'type': 'Feature', 'baseline': baseline} +# return {'geometry': geometry, 'properties': properties, 'type': 'Feature', 'baseline': baseline} def get_additional_fields(umm, *field_path): return get(umm, *field_path) diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index aacdb96a..e4c31a33 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -23,6 +23,8 @@ class ERSProduct(ASFProduct): def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() + + self.properties['frameNumber'] = str(self.properties['frameNumber']) def get_baseline_calc_properties(self) -> dict: insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index d70b6912..f2e64ea3 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -16,7 +16,8 @@ class JERSProduct(ASFProduct): 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']}, + 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index b247bfa6..29056758 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -15,6 +15,7 @@ class RadarsatProduct(ASFProduct): 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, + 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/search/__init__.py b/asf_search/search/__init__.py index 800f0472..9f1344b2 100644 --- a/asf_search/search/__init__.py +++ b/asf_search/search/__init__.py @@ -2,7 +2,7 @@ from .granule_search import granule_search from .product_search import product_search from .geo_search import geo_search -from .baseline_search import stack_from_id, get_stack_opts +from .baseline_search import stack_from_id from .campaigns import campaigns from .search_count import search_count from .search_generator import search_generator \ No newline at end of file diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 3c77b059..0724d53a 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -71,43 +71,3 @@ def stack_from_id( reference = reference_results[0] return stack_from_product(reference, opts=opts) - - -def get_stack_opts( - reference: ASFProduct, - opts: ASFSearchOptions = None -) -> ASFSearchOptions: - - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = get_default_product_type(reference) - - if reference.properties['platform'] in precalc_platforms: - if reference.properties['insarStackId'] not in [None, 'NA', 0, '0']: - stack_opts.insarStackId = reference.properties['insarStackId'] - return stack_opts - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {reference.properties["fileID"]}') - - # build a stack from scratch if it's a non-precalc dataset with state vectors - - if reference.properties['processingLevel'] == 'BURST': - stack_opts.fullBurstID = reference.properties['burst']['fullBurstID'] - stack_opts.polarization = [reference.properties['polarization']] - return stack_opts - elif reference.properties['platform'].upper() in [PLATFORM.SENTINEL1A.upper(), PLATFORM.SENTINEL1B.upper()]: - stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] - - stack_opts.beamMode = [reference.properties['beamModeType']] - stack_opts.flightDirection = reference.properties['flightDirection'] - stack_opts.relativeOrbit = [int(reference.properties['pathNumber'])] # path - - if reference.properties['polarization'] in ['HH', 'HH+HV']: - stack_opts.polarization = ['HH','HH+HV'] - elif reference.properties['polarization'] in ['VV', 'VV+VH']: - stack_opts.polarization = ['VV','VV+VH'] - else: - stack_opts.polarization = [reference.properties['polarization']] - - stack_opts.intersectsWith = reference.centroid().wkt - return stack_opts - - raise ASFBaselineError(f'Reference product is not a pre-calculated baseline dataset, and not a known ephemeris-based dataset: {reference.properties["fileID"]}') diff --git a/tests/BaselineSearch/test_baseline_search.py b/tests/BaselineSearch/test_baseline_search.py index 3bc1ed9b..11d26987 100644 --- a/tests/BaselineSearch/test_baseline_search.py +++ b/tests/BaselineSearch/test_baseline_search.py @@ -3,7 +3,7 @@ from asf_search.exceptions import ASFBaselineError, ASFSearchError from asf_search.ASFSearchResults import ASFSearchResults from asf_search import ASFSession -from asf_search.search.baseline_search import get_stack_opts, stack_from_id, stack_from_product +from asf_search.search.baseline_search import stack_from_id, stack_from_product from asf_search.baseline.stack import calculate_temporal_baselines, get_default_product_type import pytest diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index 463d834a..e1e0be75 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -1,6 +1,6 @@ from numbers import Number from asf_search import ASFSearchOptions -from asf_search.ASFProduct import ASFProduct +from asf_search import ASFSession from asf_search.CMR.translate import get from asf_search.constants import INTERNAL from asf_search.exceptions import ASFSearchError @@ -12,8 +12,10 @@ import requests import requests_mock +from asf_search.search.search_generator import as_ASFProduct + def run_test_ASFSearchResults(search_resp): - search_results = ASFSearchResults([ASFProduct(product) for product in search_resp]) + search_results = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in search_resp]) assert(len(search_results) == len(search_resp)) assert(search_results.geojson()['type'] == 'FeatureCollection') @@ -26,7 +28,8 @@ def run_test_ASFSearchResults(search_resp): assert(feature.geojson()['geometry'] == search_resp[idx]['geometry']) for key, item in feature.geojson()['properties'].items(): - assert(item == search_resp[idx]['properties'][key]) + if search_resp[idx]['properties'][key] is not None and item is not None: + assert(item == search_resp[idx]['properties'][key]) def run_test_search(search_parameters, answer): with requests_mock.Mocker() as m: diff --git a/tests/yml_tests/Resources/JERS.yml b/tests/yml_tests/Resources/JERS.yml new file mode 100644 index 00000000..fbb52246 --- /dev/null +++ b/tests/yml_tests/Resources/JERS.yml @@ -0,0 +1,217 @@ +{ + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_36421_STD_F307.jpg"], + "bytes": 41391728, + "centerLat": 57.1991, + "centerLon": -134.6525, + "faradayRotation": null, + "fileID": "J1_36421_STD_F307-L1", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "44323fdb48868e34a1be59c473a9445a", + "offNadirAngle": -1.0, + "orbit": 36421, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2011-10-30T18:15:03.000Z", + "processingLevel": "L1", + "sceneName": "J1_36421_STD_F307", + "sensor": "SAR", + "startTime": "1998-10-08T20:10:24.000Z", + "stopTime": "1998-10-08T20:10:40.000Z", + "url": "https://datapool.asf.alaska.edu/L1/J1/J1_36421_STD_F307.zip", + "pgeVersion": null, + "fileName": "J1_36421_STD_F307.zip", + "frameNumber": 2446, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1209086134-ASF", + "revision-id": 1, + "native-id": "J1_36421_STD_F307-L1", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-06T06:47:27.725Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1998-10-08T20:10:24.000Z", + "EndingDateTime": "1998-10-08T20:10:40.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 36421 }], + "GranuleUR": "J1_36421_STD_F307-L1", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { "Name": "MD5SUM", "Values": ["44323fdb48868e34a1be59c473a9445a"] }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7537"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-1591.2745"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1998-10-08T20:10:40Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.6525"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6416"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L1"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Fully processed SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L1"] }, + { + "Name": "PROCESSING_DATE", + "Values": ["2011-10-30 18:15:03.867817"], + }, + { "Name": "NEAR_START_LON", "Values": ["-133.9692"] }, + { "Name": "DOPPLER", "Values": ["5045.285"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7236"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.3171"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level One Image"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.9984"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_36421_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6728"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.3193"] }, + { "Name": "BYTES", "Values": ["41391728"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.998406, + "Latitude": 57.723615, + }, + { + "Longitude": -135.319276, + "Latitude": 56.753683, + }, + { + "Longitude": -134.317103, + "Latitude": 56.672775, + }, + { + "Longitude": -133.969239, + "Latitude": 57.641638, + }, + { + "Longitude": -134.998406, + "Latitude": 57.723615, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-01-07T15:15:51.000Z", "Type": "Insert" }, + { "Date": "2011-10-30T18:15:03.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL1" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L1/J1/J1_36421_STD_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_36421_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_36421_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2011-10-30T18:15:03.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 39.47, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [{ "ShortName": "SAR", "ComposedOf": [{ "ShortName": "STD" }] }], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.998406, 57.723615], + [-135.319276, 56.753683], + [-134.317103, 56.672775], + [-133.969239, 57.641638], + [-134.998406, 57.723615], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -1591.2745 }, +} diff --git a/tests/yml_tests/Resources/JERS_stack.yml b/tests/yml_tests/Resources/JERS_stack.yml new file mode 100644 index 00000000..bf5d5ef4 --- /dev/null +++ b/tests/yml_tests/Resources/JERS_stack.yml @@ -0,0 +1,2251 @@ +[ + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_08743_STD_F307.jpg"], + "bytes": 130277948, + "centerLat": 57.1991, + "centerLon": -134.5807, + "faradayRotation": null, + "fileID": "J1_08743_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "7749b93156fbc111bfb599f5456b4150", + "offNadirAngle": -1.0, + "orbit": 8743, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2011-12-05T20:10:10.000Z", + "processingLevel": "L0", + "sceneName": "J1_08743_STD_F307", + "sensor": "SAR", + "startTime": "1993-09-16T19:53:52.000Z", + "stopTime": "1993-09-16T19:54:08.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_08743_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_08743_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -1848, + "perpendicularBaseline": 1591, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1209348137-ASF", + "revision-id": 1, + "native-id": "J1_08743_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-06T15:47:25.076Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1993-09-16T19:53:52.000Z", + "EndingDateTime": "1993-09-16T19:54:08.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 8743 }], + "GranuleUR": "J1_08743_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["7749b93156fbc111bfb599f5456b4150"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7548"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["0"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1993-09-16T19:54:08Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.5807"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6404"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { + "Name": "PROCESSING_DATE", + "Values": ["2011-12-05 20:10:10.704998"], + }, + { "Name": "NEAR_START_LON", "Values": ["-133.8922"] }, + { "Name": "DOPPLER", "Values": ["4974.786"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7234"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.2402"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.9319"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_08743_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6729"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.2527"] }, + { "Name": "BYTES", "Values": ["130277948"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.931949, + "Latitude": 57.723354, + }, + { + "Longitude": -135.252671, + "Latitude": 56.754778, + }, + { + "Longitude": -134.240182, + "Latitude": 56.672908, + }, + { + "Longitude": -133.892217, + "Latitude": 57.64039, + }, + { + "Longitude": -134.931949, + "Latitude": 57.723354, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-05-01T08:50:34.000Z", "Type": "Insert" }, + { "Date": "2011-12-05T20:10:10.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_08743_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_08743_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_08743_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2011-12-05T20:10:10.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 124.24, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.931949, 57.723354], + [-135.252671, 56.754778], + [-134.240182, 56.672908], + [-133.892217, 57.64039], + [-134.931949, 57.723354], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": 0.0 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_10720_STD_F307.jpg"], + "bytes": 126890383, + "centerLat": 57.1991, + "centerLon": -134.7425, + "faradayRotation": null, + "fileID": "J1_10720_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "9be7bf54748c3eec25c9ed622f13a65a", + "offNadirAngle": -1.0, + "orbit": 10720, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2011-06-18T20:01:44.000Z", + "processingLevel": "L0", + "sceneName": "J1_10720_STD_F307", + "sensor": "SAR", + "startTime": "1994-01-26T19:52:25.000Z", + "stopTime": "1994-01-26T19:52:41.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_10720_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_10720_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -1716, + "perpendicularBaseline": 3809, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208506985-ASF", + "revision-id": 1, + "native-id": "J1_10720_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-05T12:45:05.375Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1994-01-26T19:52:25.000Z", + "EndingDateTime": "1994-01-26T19:52:41.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 10720 }], + "GranuleUR": "J1_10720_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["9be7bf54748c3eec25c9ed622f13a65a"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7536"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["2217.3009"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1994-01-26T19:52:41Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.7425"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6418"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { + "Name": "PROCESSING_DATE", + "Values": ["2011-06-18 20:01:44.397893"], + }, + { "Name": "NEAR_START_LON", "Values": ["-134.0618"] }, + { "Name": "DOPPLER", "Values": ["5036.368"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7226"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.4055"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-135.0902"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_10720_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6739"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.4069"] }, + { "Name": "BYTES", "Values": ["126890383"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -135.090186, + "Latitude": 57.722566, + }, + { + "Longitude": -135.406949, + "Latitude": 56.753615, + }, + { + "Longitude": -134.405458, + "Latitude": 56.673853, + }, + { + "Longitude": -134.061762, + "Latitude": 57.641769, + }, + { + "Longitude": -135.090186, + "Latitude": 57.722566, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-04-28T03:18:53.000Z", "Type": "Insert" }, + { "Date": "2011-06-18T20:01:44.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_10720_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_10720_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_10720_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2011-06-18T20:01:44.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 121.01, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-135.090186, 57.722566], + [-135.406949, 56.753615], + [-134.405458, 56.673853], + [-134.061762, 57.641769], + [-135.090186, 57.722566], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": 2217.3009 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_23900_STD_F307.jpg"], + "bytes": 125851809, + "centerLat": 57.1991, + "centerLon": -134.6454, + "faradayRotation": null, + "fileID": "J1_23900_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "fbd52f362d1eddcf5193ccebc23accd6", + "offNadirAngle": -1.0, + "orbit": 23900, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2012-01-06T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_23900_STD_F307", + "sensor": "SAR", + "startTime": "1996-06-24T20:01:34.000Z", + "stopTime": "1996-06-24T20:01:50.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_23900_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_23900_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -836, + "perpendicularBaseline": 1074, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208053067-ASF", + "revision-id": 1, + "native-id": "J1_23900_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-04T22:21:22.132Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1996-06-24T20:01:34.000Z", + "EndingDateTime": "1996-06-24T20:01:50.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 23900 }], + "GranuleUR": "J1_23900_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["fbd52f362d1eddcf5193ccebc23accd6"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7543"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-517.6473"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1996-06-24T20:01:50Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.6454"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.641"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2012-01-06 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-133.9613"] }, + { "Name": "DOPPLER", "Values": ["5013.119"] }, + { "Name": "FAR_START_LAT", "Values": ["57.723"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.3079"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.9936"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_23900_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6733"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.3131"] }, + { "Name": "BYTES", "Values": ["125851809"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.99355, + "Latitude": 57.723021, + }, + { + "Longitude": -135.313142, + "Latitude": 56.754273, + }, + { + "Longitude": -134.307929, + "Latitude": 56.673338, + }, + { + "Longitude": -133.961309, + "Latitude": 57.64102, + }, + { + "Longitude": -134.99355, + "Latitude": 57.723021, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-06-20T16:06:20.000Z", "Type": "Insert" }, + { "Date": "2012-01-06T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_23900_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_23900_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_23900_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2012-01-06T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 120.02, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.99355, 57.723021], + [-135.313142, 56.754273], + [-134.307929, 56.673338], + [-133.961309, 57.64102], + [-134.99355, 57.723021], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -517.6473 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_24559_STD_F307.jpg"], + "bytes": 129267707, + "centerLat": 57.1991, + "centerLon": -134.6666, + "faradayRotation": null, + "fileID": "J1_24559_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "b768391cb08a17aa79ec9878e223fa67", + "offNadirAngle": -1.0, + "orbit": 24559, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2012-01-16T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_24559_STD_F307", + "sensor": "SAR", + "startTime": "1996-08-07T20:01:38.000Z", + "stopTime": "1996-08-07T20:01:54.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_24559_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_24559_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -792, + "perpendicularBaseline": 2060, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208225744-ASF", + "revision-id": 1, + "native-id": "J1_24559_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-05T02:40:39.292Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1996-08-07T20:01:38.000Z", + "EndingDateTime": "1996-08-07T20:01:54.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 24559 }], + "GranuleUR": "J1_24559_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["b768391cb08a17aa79ec9878e223fa67"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7537"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["468.416"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1996-08-07T20:01:54Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.6666"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6416"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2012-01-16 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-133.9825"] }, + { "Name": "DOPPLER", "Values": ["5014.389"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7235"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.3293"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-135.0145"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_24559_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6728"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.3343"] }, + { "Name": "BYTES", "Values": ["129267707"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -135.014512, + "Latitude": 57.723506, + }, + { + "Longitude": -135.334301, + "Latitude": 56.753705, + }, + { + "Longitude": -134.329348, + "Latitude": 56.672834, + }, + { + "Longitude": -133.982507, + "Latitude": 57.64157, + }, + { + "Longitude": -135.014512, + "Latitude": 57.723506, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-05-02T02:17:03.000Z", "Type": "Insert" }, + { "Date": "2012-01-16T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_24559_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_24559_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_24559_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2012-01-16T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 123.27, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-135.014512, 57.723506], + [-135.334301, 56.753705], + [-134.329348, 56.672834], + [-133.982507, 57.64157], + [-135.014512, 57.723506], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": 468.416 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_29831_STD_F307.jpg"], + "bytes": 129267942, + "centerLat": 57.1991, + "centerLon": -134.5879, + "faradayRotation": null, + "fileID": "J1_29831_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "89e49ba084f64bac3a513cc5f311d434", + "offNadirAngle": -1.0, + "orbit": 29831, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2012-01-05T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_29831_STD_F307", + "sensor": "SAR", + "startTime": "1997-07-25T20:00:39.000Z", + "stopTime": "1997-07-25T20:00:54.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_29831_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_29831_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -440, + "perpendicularBaseline": -4651, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1209120742-ASF", + "revision-id": 1, + "native-id": "J1_29831_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-06T07:55:40.505Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1997-07-25T20:00:39.000Z", + "EndingDateTime": "1997-07-25T20:00:54.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 29831 }], + "GranuleUR": "J1_29831_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["89e49ba084f64bac3a513cc5f311d434"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.754"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-6242.5365"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1997-07-25T20:00:54Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.5879"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6412"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2012-01-05 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-133.9049"] }, + { "Name": "DOPPLER", "Values": ["5038.57"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7236"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.254"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.9323"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_29831_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6728"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.2545"] }, + { "Name": "BYTES", "Values": ["129267942"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.932274, + "Latitude": 57.723573, + }, + { + "Longitude": -135.25445, + "Latitude": 56.75402, + }, + { + "Longitude": -134.254001, + "Latitude": 56.672767, + }, + { + "Longitude": -133.904921, + "Latitude": 57.641245, + }, + { + "Longitude": -134.932274, + "Latitude": 57.723573, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-06-20T17:57:05.000Z", "Type": "Insert" }, + { "Date": "2012-01-05T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_29831_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_29831_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_29831_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2012-01-05T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 123.27, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.932274, 57.723573], + [-135.25445, 56.75402], + [-134.254001, 56.672767], + [-133.904921, 57.641245], + [-134.932274, 57.723573], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -6242.5365 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_30490_STD_F307.jpg"], + "bytes": 130293690, + "centerLat": 57.1991, + "centerLon": -134.5491, + "faradayRotation": null, + "fileID": "J1_30490_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "7560328a1f63eec2af68a9e453972df0", + "offNadirAngle": -1.0, + "orbit": 30490, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2011-12-01T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_30490_STD_F307", + "sensor": "SAR", + "startTime": "1997-09-07T20:01:53.000Z", + "stopTime": "1997-09-07T20:02:09.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_30490_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_30490_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -396, + "perpendicularBaseline": -5029, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208330518-ASF", + "revision-id": 1, + "native-id": "J1_30490_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-05T05:57:41.520Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1997-09-07T20:01:53.000Z", + "EndingDateTime": "1997-09-07T20:02:09.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 30490 }], + "GranuleUR": "J1_30490_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["7560328a1f63eec2af68a9e453972df0"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7542"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-6620.4887"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1997-09-07T20:02:09Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.5491"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6411"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2011-12-01 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-133.8644"] }, + { "Name": "DOPPLER", "Values": ["5031.419"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7238"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.2141"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.8946"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_30490_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6726"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.2174"] }, + { "Name": "BYTES", "Values": ["130293690"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.894647, + "Latitude": 57.723756, + }, + { + "Longitude": -135.217352, + "Latitude": 56.75415, + }, + { + "Longitude": -134.214098, + "Latitude": 56.67255, + }, + { + "Longitude": -133.864392, + "Latitude": 57.64107, + }, + { + "Longitude": -134.894647, + "Latitude": 57.723756, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2010-11-13T19:20:12.000Z", "Type": "Insert" }, + { "Date": "2011-12-01T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_30490_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_30490_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_30490_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2011-12-01T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 124.25, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.894647, 57.723756], + [-135.217352, 56.75415], + [-134.214098, 56.67255], + [-133.864392, 57.64107], + [-134.894647, 57.723756], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -6620.4887 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_33126_STD_F307.jpg"], + "bytes": 128284251, + "centerLat": 57.1991, + "centerLon": -134.6428, + "faradayRotation": null, + "fileID": "J1_33126_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "479b6dd0f3fc449d33d5e3be721254a7", + "offNadirAngle": -1.0, + "orbit": 33126, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2011-12-29T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_33126_STD_F307", + "sensor": "SAR", + "startTime": "1998-03-02T20:06:25.000Z", + "stopTime": "1998-03-02T20:06:41.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_33126_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_33126_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -220, + "perpendicularBaseline": -3032, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208125472-ASF", + "revision-id": 1, + "native-id": "J1_33126_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-04T23:48:11.095Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1998-03-02T20:06:25.000Z", + "EndingDateTime": "1998-03-02T20:06:41.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 33126 }], + "GranuleUR": "J1_33126_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["479b6dd0f3fc449d33d5e3be721254a7"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7535"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-4623.1698"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1998-03-02T20:06:41Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.6428"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6418"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2011-12-29 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-133.962"] }, + { "Name": "DOPPLER", "Values": ["5058.918"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7233"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.3091"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.987"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_33126_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6731"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.3073"] }, + { "Name": "BYTES", "Values": ["128284251"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.987039, + "Latitude": 57.723316, + }, + { + "Longitude": -135.307272, + "Latitude": 56.753543, + }, + { + "Longitude": -134.30913, + "Latitude": 56.673102, + }, + { + "Longitude": -133.962041, + "Latitude": 57.641822, + }, + { + "Longitude": -134.987039, + "Latitude": 57.723316, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2010-12-21T06:02:48.000Z", "Type": "Insert" }, + { "Date": "2011-12-29T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_33126_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_33126_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_33126_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2011-12-29T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 122.34, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.987039, 57.723316], + [-135.307272, 56.753543], + [-134.30913, 56.673102], + [-133.962041, 57.641822], + [-134.987039, 57.723316], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -4623.1698 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_33785_STD_F307.jpg"], + "bytes": 129129217, + "centerLat": 57.1991, + "centerLon": -134.6122, + "faradayRotation": null, + "fileID": "J1_33785_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "83693f53f9c758bac70e0998166aeeb4", + "offNadirAngle": -1.0, + "orbit": 33785, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2011-12-30T20:57:36.000Z", + "processingLevel": "L0", + "sceneName": "J1_33785_STD_F307", + "sensor": "SAR", + "startTime": "1998-04-15T20:07:18.000Z", + "stopTime": "1998-04-15T20:07:34.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_33785_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_33785_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -176, + "perpendicularBaseline": -2452, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208206377-ASF", + "revision-id": 1, + "native-id": "J1_33785_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-05T02:05:23.269Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1998-04-15T20:07:18.000Z", + "EndingDateTime": "1998-04-15T20:07:34.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 33785 }], + "GranuleUR": "J1_33785_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["83693f53f9c758bac70e0998166aeeb4"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7538"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-4042.9112"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1998-04-15T20:07:34Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.6122"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6415"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { + "Name": "PROCESSING_DATE", + "Values": ["2011-12-30 20:57:36.269989"], + }, + { "Name": "NEAR_START_LON", "Values": ["-133.9289"] }, + { "Name": "DOPPLER", "Values": ["5067.172"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7236"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.2773"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.9576"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_33785_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6728"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.279"] }, + { "Name": "BYTES", "Values": ["129129217"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.957623, + "Latitude": 57.723589, + }, + { + "Longitude": -135.279047, + "Latitude": 56.753785, + }, + { + "Longitude": -134.277322, + "Latitude": 56.672801, + }, + { + "Longitude": -133.928889, + "Latitude": 57.641528, + }, + { + "Longitude": -134.957623, + "Latitude": 57.723589, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-12-30T20:57:36.000Z", "Type": "Insert" }, + { "Date": "2011-12-30T20:57:36.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_33785_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_33785_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_33785_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2011-12-30T20:57:36.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 123.14, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.957623, 57.723589], + [-135.279047, 56.753785], + [-134.277322, 56.672801], + [-133.928889, 57.641528], + [-134.957623, 57.723589], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -4042.9112 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_34444_STD_F307.jpg"], + "bytes": 128282969, + "centerLat": 57.1991, + "centerLon": -134.683, + "faradayRotation": null, + "fileID": "J1_34444_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "2235c780a4321729beb5f7d63a87add3", + "offNadirAngle": -1.0, + "orbit": 34444, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2012-01-04T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_34444_STD_F307", + "sensor": "SAR", + "startTime": "1998-05-29T20:08:20.000Z", + "stopTime": "1998-05-29T20:08:36.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_34444_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_34444_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": -132, + "perpendicularBaseline": 633, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1209144752-ASF", + "revision-id": 1, + "native-id": "J1_34444_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-06T08:54:12.973Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1998-05-29T20:08:20.000Z", + "EndingDateTime": "1998-05-29T20:08:36.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 34444 }], + "GranuleUR": "J1_34444_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["2235c780a4321729beb5f7d63a87add3"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7537"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-958.3969"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1998-05-29T20:08:36Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.683"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6416"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2012-01-04 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-134.0006"] }, + { "Name": "DOPPLER", "Values": ["5068.263"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7234"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.3485"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-135.0281"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_34444_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6729"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.3491"] }, + { "Name": "BYTES", "Values": ["128282969"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -135.028085, + "Latitude": 57.723439, + }, + { + "Longitude": -135.349078, + "Latitude": 56.753697, + }, + { + "Longitude": -134.348533, + "Latitude": 56.672909, + }, + { + "Longitude": -134.000576, + "Latitude": 57.641582, + }, + { + "Longitude": -135.028085, + "Latitude": 57.723439, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-11-22T04:58:10.000Z", "Type": "Insert" }, + { "Date": "2012-01-04T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_34444_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_34444_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_34444_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2012-01-04T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 122.34, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-135.028085, 57.723439], + [-135.349078, 56.753697], + [-134.348533, 56.672909], + [-134.000576, 57.641582], + [-135.028085, 57.723439], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -958.3969 }, + }, + { + "properties": + { + "beamModeType": "STD", + "browse": + ["https://datapool.asf.alaska.edu/BROWSE/J1/J1_36421_STD_F307.jpg"], + "bytes": 129413152, + "centerLat": 57.1991, + "centerLon": -134.6525, + "faradayRotation": null, + "fileID": "J1_36421_STD_F307-L0", + "flightDirection": "DESCENDING", + "groupID": null, + "granuleType": "J1_STD_FRAME", + "insarStackId": "2016301", + "md5sum": "f13257d345d3676c1c999849229ab23e", + "offNadirAngle": -1.0, + "orbit": 36421, + "pathNumber": 327, + "platform": "JERS-1", + "pointingAngle": null, + "polarization": "HH", + "processingDate": "2012-01-10T00:00:00.000Z", + "processingLevel": "L0", + "sceneName": "J1_36421_STD_F307", + "sensor": "SAR", + "startTime": "1998-10-08T20:10:24.000Z", + "stopTime": "1998-10-08T20:10:40.000Z", + "url": "https://datapool.asf.alaska.edu/L0/J1/J1_36421_STD_L0_F307.zip", + "pgeVersion": null, + "fileName": "J1_36421_STD_L0_F307.zip", + "frameNumber": 2446, + "temporalBaseline": 0, + "perpendicularBaseline": 0, + }, + "meta": + { + "concept-type": "granule", + "concept-id": "G1208536712-ASF", + "revision-id": 1, + "native-id": "J1_36421_STD_F307-L0", + "provider-id": "ASF", + "format": "application/echo10+xml", + "revision-date": "2015-11-05T13:45:23.705Z", + }, + "umm": + { + "TemporalExtent": + { + "RangeDateTime": + { + "BeginningDateTime": "1998-10-08T20:10:24.000Z", + "EndingDateTime": "1998-10-08T20:10:40.000Z", + }, + }, + "OrbitCalculatedSpatialDomains": [{ "OrbitNumber": 36421 }], + "GranuleUR": "J1_36421_STD_F307-L0", + "AdditionalAttributes": + [ + { "Name": "FLIGHT_LINE", "Values": ["NULL"] }, + { "Name": "OFF_NADIR_ANGLE", "Values": ["-1"] }, + { + "Name": "MD5SUM", + "Values": ["f13257d345d3676c1c999849229ab23e"], + }, + { "Name": "GRANULE_TYPE", "Values": ["J1_STD_FRAME"] }, + { "Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"] }, + { "Name": "FAR_END_LAT", "Values": ["56.7537"] }, + { "Name": "INSAR_STACK_SIZE", "Values": ["10"] }, + { "Name": "BEAM_MODE_TYPE", "Values": ["STD"] }, + { "Name": "INSAR_BASELINE", "Values": ["-1591.2745"] }, + { "Name": "CENTER_FRAME_ID", "Values": ["2446"] }, + { "Name": "CENTER_ESA_FRAME", "Values": ["2446"] }, + { "Name": "ACQUISITION_DATE", "Values": ["1998-10-08T20:10:40Z"] }, + { "Name": "MISSION_NAME", "Values": ["NULL"] }, + { "Name": "CENTER_LON", "Values": ["-134.6525"] }, + { "Name": "NEAR_START_LAT", "Values": ["57.6416"] }, + { "Name": "BEAM_MODE", "Values": ["Standard"] }, + { + "Name": "BEAM_MODE_DESC", + "Values": ["ERS-1,ERS-2,JERS-1,SEASAT,SMAP Standard Beam SAR"], + }, + { "Name": "PROCESSING_TYPE", "Values": ["L0"] }, + { + "Name": "PROCESSING_DESCRIPTION", + "Values": ["Raw signal SAR data."], + }, + { "Name": "FRAME_NUMBER", "Values": ["307"] }, + { "Name": "PROCESSING_LEVEL", "Values": ["L0"] }, + { "Name": "PROCESSING_DATE", "Values": ["2012-01-10 00:00:00"] }, + { "Name": "NEAR_START_LON", "Values": ["-133.9692"] }, + { "Name": "DOPPLER", "Values": ["5045.285"] }, + { "Name": "FAR_START_LAT", "Values": ["57.7236"] }, + { "Name": "NEAR_END_LON", "Values": ["-134.3171"] }, + { "Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"] }, + { "Name": "POLARIZATION", "Values": ["HH"] }, + { "Name": "FAR_START_LON", "Values": ["-134.9984"] }, + { + "Name": "THUMBNAIL_URL", + "Values": + [ + "https://datapool.asf.alaska.edu/THUMBNAIL/J1/J1_36421_STD_F307_THUMBNAIL.jpg", + ], + }, + { "Name": "ASF_PLATFORM", "Values": ["JERS-1"] }, + { "Name": "INSAR_STACK_ID", "Values": ["2016301"] }, + { "Name": "LOOK_DIRECTION", "Values": ["R"] }, + { "Name": "PATH_NUMBER", "Values": ["327"] }, + { "Name": "NEAR_END_LAT", "Values": ["56.6728"] }, + { "Name": "FARADAY_ROTATION", "Values": ["NA"] }, + { "Name": "FAR_END_LON", "Values": ["-135.3193"] }, + { "Name": "BYTES", "Values": ["129413152"] }, + { "Name": "CENTER_LAT", "Values": ["57.1991"] }, + ], + "SpatialExtent": + { + "HorizontalSpatialDomain": + { + "Geometry": + { + "GPolygons": + [ + { + "Boundary": + { + "Points": + [ + { + "Longitude": -134.998406, + "Latitude": 57.723615, + }, + { + "Longitude": -135.319276, + "Latitude": 56.753683, + }, + { + "Longitude": -134.317103, + "Latitude": 56.672775, + }, + { + "Longitude": -133.969239, + "Latitude": 57.641638, + }, + { + "Longitude": -134.998406, + "Latitude": 57.723615, + }, + ], + }, + }, + ], + }, + }, + }, + "ProviderDates": + [ + { "Date": "2011-10-30T18:46:04.000Z", "Type": "Insert" }, + { "Date": "2012-01-10T00:00:00.000Z", "Type": "Update" }, + ], + "CollectionReference": { "EntryTitle": "JERS-1_LEVEL0" }, + "RelatedUrls": + [ + { + "Format": "Not provided", + "Type": "GET DATA", + "URL": "https://datapool.asf.alaska.edu/L0/J1/J1_36421_STD_L0_F307.zip", + }, + { + "Format": "Not provided", + "Type": "GET RELATED VISUALIZATION", + "URL": "https://datapool.asf.alaska.edu/BROWSE/J1/J1_36421_STD_F307.jpg", + }, + ], + "DataGranule": + { + "DayNightFlag": "Unspecified", + "Identifiers": + [ + { + "Identifier": "J1_36421_STD_F307", + "IdentifierType": "ProducerGranuleId", + }, + ], + "ProductionDateTime": "2012-01-10T00:00:00.000Z", + "ArchiveAndDistributionInformation": + [ + { + "Name": "Not provided", + "Size": 123.41, + "SizeUnit": "MB", + "Format": "Not provided", + }, + ], + }, + "Platforms": + [ + { + "ShortName": "JERS-1", + "Instruments": + [ + { + "ShortName": "SAR", + "ComposedOf": [{ "ShortName": "STD" }], + }, + ], + }, + ], + }, + "geometry": + { + "coordinates": + [ + [ + [-134.998406, 57.723615], + [-135.319276, 56.753683], + [-134.317103, 56.672775], + [-133.969239, 57.641638], + [-134.998406, 57.723615], + ], + ], + "type": "Polygon", + }, + "baseline": { "insarBaseline": -1591.2745 }, + }, +] diff --git a/tests/yml_tests/Resources/RADARSAT.yml b/tests/yml_tests/Resources/RADARSAT.yml new file mode 100644 index 00000000..1fcb830f --- /dev/null +++ b/tests/yml_tests/Resources/RADARSAT.yml @@ -0,0 +1 @@ +{"properties": {"beamModeType": "FN4", "browse": null, "bytes": 102067357, "centerLat": 63.9796, "centerLon": -145.5593, "faradayRotation": null, "fileID": "R1_16844_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "95bcc7a9b7b9044a806fd5426b9e2ca5", "offNadirAngle": -1.0, "orbit": 16844, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T12:52:03.000Z", "processingLevel": "L0", "sceneName": "R1_16844_FN4_F160", "sensor": "SAR", "startTime": "1999-01-26T03:28:47.000Z", "stopTime": "1999-01-26T03:28:55.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_16844_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_16844_FN4_L0_F160.zip", "frameNumber": 1280}, "meta": {"concept-type": "granule", "concept-id": "G1207619851-ASF", "revision-id": 1, "native-id": "R1_16844_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T12:14:30.975Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "1999-01-26T03:28:47.000Z", "EndingDateTime": "1999-01-26T03:28:55.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 16844}], "GranuleUR": "R1_16844_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["95bcc7a9b7b9044a806fd5426b9e2ca5"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2358"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["0"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["1999-01-26T03:28:55Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.5593"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7212"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 12:52:03.423081"]}, {"Name": "NEAR_START_LON", "Values": ["-146.0694"]}, {"Name": "DOPPLER", "Values": ["-4802.147"]}, {"Name": "FAR_START_LAT", "Values": ["63.785"]}, {"Name": "NEAR_END_LON", "Values": ["-146.2387"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-144.8891"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1716"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.0392"]}, {"Name": "BYTES", "Values": ["102067357"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -144.889079, "Latitude": 63.785042}, {"Longitude": -145.039155, "Latitude": 64.235808}, {"Longitude": -146.238682, "Latitude": 64.171604}, {"Longitude": -146.069403, "Latitude": 63.721179}, {"Longitude": -144.889079, "Latitude": 63.785042}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T12:52:03.000Z", "Type": "Insert"}, {"Date": "2011-01-29T12:52:03.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_16844_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_16844_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T12:52:03.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 97.33, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-144.889079, 63.785042], [-145.039155, 64.235808], [-146.238682, 64.171604], [-146.069403, 63.721179], [-144.889079, 63.785042]]], "type": "Polygon"}, "baseline": {"insarBaseline": 0.0}} \ No newline at end of file diff --git a/tests/yml_tests/Resources/RADARSAT_stack.yml b/tests/yml_tests/Resources/RADARSAT_stack.yml new file mode 100644 index 00000000..406ff5fa --- /dev/null +++ b/tests/yml_tests/Resources/RADARSAT_stack.yml @@ -0,0 +1 @@ +[{"properties": {"beamModeType": "FN4", "browse": null, "bytes": 102067357, "centerLat": 63.9796, "centerLon": -145.5593, "faradayRotation": null, "fileID": "R1_16844_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "95bcc7a9b7b9044a806fd5426b9e2ca5", "offNadirAngle": -1.0, "orbit": 16844, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T12:52:03.000Z", "processingLevel": "L0", "sceneName": "R1_16844_FN4_F160", "sensor": "SAR", "startTime": "1999-01-26T03:28:47.000Z", "stopTime": "1999-01-26T03:28:55.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_16844_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_16844_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 0, "perpendicularBaseline": 0}, "meta": {"concept-type": "granule", "concept-id": "G1207619851-ASF", "revision-id": 1, "native-id": "R1_16844_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T12:14:30.975Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "1999-01-26T03:28:47.000Z", "EndingDateTime": "1999-01-26T03:28:55.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 16844}], "GranuleUR": "R1_16844_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["95bcc7a9b7b9044a806fd5426b9e2ca5"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2358"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["0"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["1999-01-26T03:28:55Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.5593"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7212"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 12:52:03.423081"]}, {"Name": "NEAR_START_LON", "Values": ["-146.0694"]}, {"Name": "DOPPLER", "Values": ["-4802.147"]}, {"Name": "FAR_START_LAT", "Values": ["63.785"]}, {"Name": "NEAR_END_LON", "Values": ["-146.2387"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-144.8891"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1716"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.0392"]}, {"Name": "BYTES", "Values": ["102067357"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -144.889079, "Latitude": 63.785042}, {"Longitude": -145.039155, "Latitude": 64.235808}, {"Longitude": -146.238682, "Latitude": 64.171604}, {"Longitude": -146.069403, "Latitude": 63.721179}, {"Longitude": -144.889079, "Latitude": 63.785042}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T12:52:03.000Z", "Type": "Insert"}, {"Date": "2011-01-29T12:52:03.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_16844_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_16844_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T12:52:03.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 97.33, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-144.889079, 63.785042], [-145.039155, 64.235808], [-146.238682, 64.171604], [-146.069403, 63.721179], [-144.889079, 63.785042]]], "type": "Polygon"}, "baseline": {"insarBaseline": 0.0}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 103460198, "centerLat": 63.9796, "centerLon": -145.6583, "faradayRotation": null, "fileID": "R1_28163_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "aca91b010014bc7311043e7fafc09a5a", "offNadirAngle": -1.0, "orbit": 28163, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-07T05:19:12.000Z", "processingLevel": "L0", "sceneName": "R1_28163_FN4_F160", "sensor": "SAR", "startTime": "2001-03-28T03:28:14.000Z", "stopTime": "2001-03-28T03:28:22.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_28163_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_28163_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 792, "perpendicularBaseline": 1202}, "meta": {"concept-type": "granule", "concept-id": "G1206900590-ASF", "revision-id": 1, "native-id": "R1_28163_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-03T18:03:33.697Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2001-03-28T03:28:14.000Z", "EndingDateTime": "2001-03-28T03:28:22.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 28163}], "GranuleUR": "R1_28163_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["aca91b010014bc7311043e7fafc09a5a"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2365"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1201.9831"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2001-03-28T03:28:22Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.6583"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7205"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-07 05:19:12.669522"]}, {"Name": "NEAR_START_LON", "Values": ["-146.1702"]}, {"Name": "DOPPLER", "Values": ["-4770.25"]}, {"Name": "FAR_START_LAT", "Values": ["63.7857"]}, {"Name": "NEAR_END_LON", "Values": ["-146.3417"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-144.984"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1709"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.1362"]}, {"Name": "BYTES", "Values": ["103460198"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -144.984029, "Latitude": 63.785718}, {"Longitude": -145.136162, "Latitude": 64.236505}, {"Longitude": -146.34165, "Latitude": 64.170902}, {"Longitude": -146.170223, "Latitude": 63.72048}, {"Longitude": -144.984029, "Latitude": 63.785718}]}}]}}}, "ProviderDates": [{"Date": "2011-01-07T05:19:12.000Z", "Type": "Insert"}, {"Date": "2011-01-07T05:19:12.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_28163_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_28163_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-07T05:19:12.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 98.66, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-144.984029, 63.785718], [-145.136162, 64.236505], [-146.34165, 64.170902], [-146.170223, 63.72048], [-144.984029, 63.785718]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1201.9831}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 102474600, "centerLat": 63.9796, "centerLon": -145.5448, "faradayRotation": null, "fileID": "R1_34680_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "a9b640a241ecca5fc8a0ff26bd7a238d", "offNadirAngle": -1.0, "orbit": 34680, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T04:06:20.000Z", "processingLevel": "L0", "sceneName": "R1_34680_FN4_F160", "sensor": "SAR", "startTime": "2002-06-27T03:27:48.000Z", "stopTime": "2002-06-27T03:27:56.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_34680_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_34680_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1248, "perpendicularBaseline": 733}, "meta": {"concept-type": "granule", "concept-id": "G1208169760-ASF", "revision-id": 1, "native-id": "R1_34680_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T01:02:38.725Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2002-06-27T03:27:48.000Z", "EndingDateTime": "2002-06-27T03:27:56.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 34680}], "GranuleUR": "R1_34680_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["a9b640a241ecca5fc8a0ff26bd7a238d"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2359"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["732.8312"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2002-06-27T03:27:56Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.5448"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7211"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 04:06:20.308139"]}, {"Name": "NEAR_START_LON", "Values": ["-146.0551"]}, {"Name": "DOPPLER", "Values": ["-4799.433"]}, {"Name": "FAR_START_LAT", "Values": ["63.7849"]}, {"Name": "NEAR_END_LON", "Values": ["-146.2243"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-144.8743"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1717"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.0244"]}, {"Name": "BYTES", "Values": ["102474600"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -144.874348, "Latitude": 63.784917}, {"Longitude": -145.024371, "Latitude": 64.235878}, {"Longitude": -146.22431, "Latitude": 64.171709}, {"Longitude": -146.055068, "Latitude": 63.721089}, {"Longitude": -144.874348, "Latitude": 63.784917}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T04:06:20.000Z", "Type": "Insert"}, {"Date": "2011-01-29T04:06:20.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_34680_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_34680_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T04:06:20.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 97.72, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-144.874348, 63.784917], [-145.024371, 64.235878], [-146.22431, 64.171709], [-146.055068, 63.721089], [-144.874348, 63.784917]]], "type": "Polygon"}, "baseline": {"insarBaseline": 732.8312}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 106192111, "centerLat": 63.9796, "centerLon": -145.6966, "faradayRotation": null, "fileID": "R1_38453_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "1254a11cb03661bd0e7e3075b3d08a01", "offNadirAngle": -1.0, "orbit": 38453, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-25T09:36:18.000Z", "processingLevel": "L0", "sceneName": "R1_38453_FN4_F160", "sensor": "SAR", "startTime": "2003-03-18T03:27:23.000Z", "stopTime": "2003-03-18T03:27:30.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_38453_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_38453_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1512, "perpendicularBaseline": 416}, "meta": {"concept-type": "granule", "concept-id": "G1208272527-ASF", "revision-id": 1, "native-id": "R1_38453_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T04:06:28.335Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-03-18T03:27:23.000Z", "EndingDateTime": "2003-03-18T03:27:30.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 38453}], "GranuleUR": "R1_38453_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["1254a11cb03661bd0e7e3075b3d08a01"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2366"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["416.2266"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-03-18T03:27:30Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.6966"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7203"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-25 09:36:18.674991"]}, {"Name": "NEAR_START_LON", "Values": ["-146.2089"]}, {"Name": "DOPPLER", "Values": ["-4766.294"]}, {"Name": "FAR_START_LAT", "Values": ["63.7858"]}, {"Name": "NEAR_END_LON", "Values": ["-146.3806"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.0217"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1708"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.1742"]}, {"Name": "BYTES", "Values": ["106192111"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.021746, "Latitude": 63.78576}, {"Longitude": -145.174158, "Latitude": 64.236585}, {"Longitude": -146.380585, "Latitude": 64.170795}, {"Longitude": -146.208862, "Latitude": 63.720338}, {"Longitude": -145.021746, "Latitude": 63.78576}]}}]}}}, "ProviderDates": [{"Date": "2010-12-25T09:36:18.000Z", "Type": "Insert"}, {"Date": "2010-12-25T09:36:18.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_38453_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_38453_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-25T09:36:18.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 101.27, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.021746, 63.78576], [-145.174158, 64.236585], [-146.380585, 64.170795], [-146.208862, 63.720338], [-145.021746, 63.78576]]], "type": "Polygon"}, "baseline": {"insarBaseline": 416.2266}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109364722, "centerLat": 63.9796, "centerLon": -145.8223, "faradayRotation": null, "fileID": "R1_39825_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9cb34d258f76024fcb6d1f41f5a576ca", "offNadirAngle": -1.0, "orbit": 39825, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-28T04:43:01.000Z", "processingLevel": "L0", "sceneName": "R1_39825_FN4_F160", "sensor": "SAR", "startTime": "2003-06-22T03:27:16.000Z", "stopTime": "2003-06-22T03:27:23.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_39825_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_39825_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1608, "perpendicularBaseline": 803}, "meta": {"concept-type": "granule", "concept-id": "G1207729699-ASF", "revision-id": 1, "native-id": "R1_39825_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T14:55:14.540Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-06-22T03:27:16.000Z", "EndingDateTime": "2003-06-22T03:27:23.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 39825}], "GranuleUR": "R1_39825_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9cb34d258f76024fcb6d1f41f5a576ca"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2372"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["803.1636"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-06-22T03:27:23Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8223"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7197"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-28 04:43:01.591489"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3366"]}, {"Name": "DOPPLER", "Values": ["-4734.483"]}, {"Name": "FAR_START_LAT", "Values": ["63.7865"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5104"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1433"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.17"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.2977"]}, {"Name": "BYTES", "Values": ["109364722"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.143282, "Latitude": 63.786494}, {"Longitude": -145.2977, "Latitude": 64.23723}, {"Longitude": -146.510372, "Latitude": 64.170024}, {"Longitude": -146.336553, "Latitude": 63.71968}, {"Longitude": -145.143282, "Latitude": 63.786494}]}}]}}}, "ProviderDates": [{"Date": "2010-12-28T04:43:01.000Z", "Type": "Insert"}, {"Date": "2010-12-28T04:43:01.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_39825_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_39825_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-28T04:43:01.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.29, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.143282, 63.786494], [-145.2977, 64.23723], [-146.510372, 64.170024], [-146.336553, 63.71968], [-145.143282, 63.786494]]], "type": "Polygon"}, "baseline": {"insarBaseline": 803.1636}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109966508, "centerLat": 63.9796, "centerLon": -145.8128, "faradayRotation": null, "fileID": "R1_40168_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "e0e8a8b07a40b18703c622f830f77ef7", "offNadirAngle": -1.0, "orbit": 40168, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-07T07:59:44.000Z", "processingLevel": "L0", "sceneName": "R1_40168_FN4_F160", "sensor": "SAR", "startTime": "2003-07-16T03:27:10.000Z", "stopTime": "2003-07-16T03:27:18.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_40168_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_40168_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1632, "perpendicularBaseline": 1349}, "meta": {"concept-type": "granule", "concept-id": "G1207755777-ASF", "revision-id": 1, "native-id": "R1_40168_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T15:55:47.900Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-07-16T03:27:10.000Z", "EndingDateTime": "2003-07-16T03:27:18.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 40168}], "GranuleUR": "R1_40168_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["e0e8a8b07a40b18703c622f830f77ef7"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2372"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1348.5606"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-07-16T03:27:18Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8128"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7197"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-07 07:59:44.537657"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3272"]}, {"Name": "DOPPLER", "Values": ["-4733.309"]}, {"Name": "FAR_START_LAT", "Values": ["63.7865"]}, {"Name": "NEAR_END_LON", "Values": ["-146.501"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1337"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.17"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.2881"]}, {"Name": "BYTES", "Values": ["109966508"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.133721, "Latitude": 63.786487}, {"Longitude": -145.288141, "Latitude": 64.237201}, {"Longitude": -146.500974, "Latitude": 64.169978}, {"Longitude": -146.327151, "Latitude": 63.719655}, {"Longitude": -145.133721, "Latitude": 63.786487}]}}]}}}, "ProviderDates": [{"Date": "2011-01-07T07:59:44.000Z", "Type": "Insert"}, {"Date": "2011-01-07T07:59:44.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_40168_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_40168_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-07T07:59:44.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.87, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.133721, 63.786487], [-145.288141, 64.237201], [-146.500974, 64.169978], [-146.327151, 63.719655], [-145.133721, 63.786487]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1348.5606}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109478129, "centerLat": 63.9796, "centerLon": -145.8168, "faradayRotation": null, "fileID": "R1_40511_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "fcf4389e1f61c7c2b2755cb0aa0b2ee2", "offNadirAngle": -1.0, "orbit": 40511, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-28T03:58:58.000Z", "processingLevel": "L0", "sceneName": "R1_40511_FN4_F160", "sensor": "SAR", "startTime": "2003-08-09T03:27:08.000Z", "stopTime": "2003-08-09T03:27:16.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_40511_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_40511_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1656, "perpendicularBaseline": 1212}, "meta": {"concept-type": "granule", "concept-id": "G1207321218-ASF", "revision-id": 1, "native-id": "R1_40511_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T03:41:54.773Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-08-09T03:27:08.000Z", "EndingDateTime": "2003-08-09T03:27:16.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 40511}], "GranuleUR": "R1_40511_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["fcf4389e1f61c7c2b2755cb0aa0b2ee2"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2372"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1211.9706"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-08-09T03:27:16Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8168"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-28 03:58:58.874668"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3311"]}, {"Name": "DOPPLER", "Values": ["-4732.377"]}, {"Name": "FAR_START_LAT", "Values": ["63.7865"]}, {"Name": "NEAR_END_LON", "Values": ["-146.505"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1377"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.17"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.2921"]}, {"Name": "BYTES", "Values": ["109478129"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.137664, "Latitude": 63.786502}, {"Longitude": -145.292149, "Latitude": 64.237217}, {"Longitude": -146.504995, "Latitude": 64.169957}, {"Longitude": -146.331107, "Latitude": 63.719635}, {"Longitude": -145.137664, "Latitude": 63.786502}]}}]}}}, "ProviderDates": [{"Date": "2010-12-28T03:58:58.000Z", "Type": "Insert"}, {"Date": "2010-12-28T03:58:58.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_40511_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_40511_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-28T03:58:58.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.4, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.137664, 63.786502], [-145.292149, 64.237217], [-146.504995, 64.169957], [-146.331107, 63.719635], [-145.137664, 63.786502]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1211.9706}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109753115, "centerLat": 63.9796, "centerLon": -145.8272, "faradayRotation": null, "fileID": "R1_40854_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "bb48b10a25c1a663fd9b12c3fca08e1c", "offNadirAngle": -1.0, "orbit": 40854, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-11-19T22:02:12.000Z", "processingLevel": "L0", "sceneName": "R1_40854_FN4_F160", "sensor": "SAR", "startTime": "2003-09-02T03:27:08.000Z", "stopTime": "2003-09-02T03:27:15.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_40854_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_40854_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1680, "perpendicularBaseline": 812}, "meta": {"concept-type": "granule", "concept-id": "G1207793715-ASF", "revision-id": 1, "native-id": "R1_40854_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T17:10:58.283Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-09-02T03:27:08.000Z", "EndingDateTime": "2003-09-02T03:27:15.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 40854}], "GranuleUR": "R1_40854_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["bb48b10a25c1a663fd9b12c3fca08e1c"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["811.5579"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-09-02T03:27:15Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8272"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-11-19 22:02:12.945681"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3415"]}, {"Name": "DOPPLER", "Values": ["-4732.378"]}, {"Name": "FAR_START_LAT", "Values": ["63.7865"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5155"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.148"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.17"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3026"]}, {"Name": "BYTES", "Values": ["109753115"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.148041, "Latitude": 63.786538}, {"Longitude": -145.302634, "Latitude": 64.237265}, {"Longitude": -146.515517, "Latitude": 64.169951}, {"Longitude": -146.341521, "Latitude": 63.719618}, {"Longitude": -145.148041, "Latitude": 63.786538}]}}]}}}, "ProviderDates": [{"Date": "2011-11-19T22:02:12.000Z", "Type": "Insert"}, {"Date": "2011-11-19T22:02:12.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_40854_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_40854_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-11-19T22:02:12.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.66, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.148041, 63.786538], [-145.302634, 64.237265], [-146.515517, 64.169951], [-146.341521, 63.719618], [-145.148041, 63.786538]]], "type": "Polygon"}, "baseline": {"insarBaseline": 811.5579}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109109512, "centerLat": 63.9796, "centerLon": -145.8301, "faradayRotation": null, "fileID": "R1_41197_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9ba1a558240ad8cb3fabf283b650236d", "offNadirAngle": -1.0, "orbit": 41197, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-09T08:53:45.000Z", "processingLevel": "L0", "sceneName": "R1_41197_FN4_F160", "sensor": "SAR", "startTime": "2003-09-26T03:27:07.000Z", "stopTime": "2003-09-26T03:27:14.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_41197_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_41197_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1704, "perpendicularBaseline": 790}, "meta": {"concept-type": "granule", "concept-id": "G1207395046-ASF", "revision-id": 1, "native-id": "R1_41197_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T05:08:35.625Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-09-26T03:27:07.000Z", "EndingDateTime": "2003-09-26T03:27:14.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 41197}], "GranuleUR": "R1_41197_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9ba1a558240ad8cb3fabf283b650236d"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["790.1225"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-09-26T03:27:14Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8301"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-09 08:53:45.726461"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3445"]}, {"Name": "DOPPLER", "Values": ["-4732.401"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5185"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1509"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3055"]}, {"Name": "BYTES", "Values": ["109109512"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.150873, "Latitude": 63.786555}, {"Longitude": -145.305481, "Latitude": 64.237277}, {"Longitude": -146.518486, "Latitude": 64.169948}, {"Longitude": -146.344472, "Latitude": 63.71962}, {"Longitude": -145.150873, "Latitude": 63.786555}]}}]}}}, "ProviderDates": [{"Date": "2011-01-09T08:53:45.000Z", "Type": "Insert"}, {"Date": "2011-01-09T08:53:45.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_41197_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_41197_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-09T08:53:45.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.05, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.150873, 63.786555], [-145.305481, 64.237277], [-146.518486, 64.169948], [-146.344472, 63.71962], [-145.150873, 63.786555]]], "type": "Polygon"}, "baseline": {"insarBaseline": 790.1225}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110141473, "centerLat": 63.9796, "centerLon": -145.8342, "faradayRotation": null, "fileID": "R1_41540_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "846aef41178cea8e4db2a949b9915060", "offNadirAngle": -1.0, "orbit": 41540, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-24T02:34:02.000Z", "processingLevel": "L0", "sceneName": "R1_41540_FN4_F160", "sensor": "SAR", "startTime": "2003-10-20T03:27:05.000Z", "stopTime": "2003-10-20T03:27:13.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_41540_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_41540_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1728, "perpendicularBaseline": 693}, "meta": {"concept-type": "granule", "concept-id": "G1208171870-ASF", "revision-id": 1, "native-id": "R1_41540_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T01:06:21.320Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-10-20T03:27:05.000Z", "EndingDateTime": "2003-10-20T03:27:13.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 41540}], "GranuleUR": "R1_41540_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["846aef41178cea8e4db2a949b9915060"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["692.6632"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-10-20T03:27:13Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8342"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-24 02:34:02.461173"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3486"]}, {"Name": "DOPPLER", "Values": ["-4732.292"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5227"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1549"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3096"]}, {"Name": "BYTES", "Values": ["110141473"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.154895, "Latitude": 63.786563}, {"Longitude": -145.309602, "Latitude": 64.237298}, {"Longitude": -146.522692, "Latitude": 64.169917}, {"Longitude": -146.348577, "Latitude": 63.719577}, {"Longitude": -145.154895, "Latitude": 63.786563}]}}]}}}, "ProviderDates": [{"Date": "2010-12-24T02:34:02.000Z", "Type": "Insert"}, {"Date": "2010-12-24T02:34:02.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_41540_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_41540_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-24T02:34:02.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.03, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.154895, 63.786563], [-145.309602, 64.237298], [-146.522692, 64.169917], [-146.348577, 63.719577], [-145.154895, 63.786563]]], "type": "Polygon"}, "baseline": {"insarBaseline": 692.6632}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109206540, "centerLat": 63.9796, "centerLon": -145.8341, "faradayRotation": null, "fileID": "R1_41883_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "e01cebae6ef88cba893e654b622cebae", "offNadirAngle": -1.0, "orbit": 41883, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T09:34:57.000Z", "processingLevel": "L0", "sceneName": "R1_41883_FN4_F160", "sensor": "SAR", "startTime": "2003-11-13T03:27:03.000Z", "stopTime": "2003-11-13T03:27:11.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_41883_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_41883_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1752, "perpendicularBaseline": 744}, "meta": {"concept-type": "granule", "concept-id": "G1208325586-ASF", "revision-id": 1, "native-id": "R1_41883_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T05:47:15.011Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-11-13T03:27:03.000Z", "EndingDateTime": "2003-11-13T03:27:11.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 41883}], "GranuleUR": "R1_41883_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["e01cebae6ef88cba893e654b622cebae"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["743.5046"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-11-13T03:27:11Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8341"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 09:34:57.114902"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3485"]}, {"Name": "DOPPLER", "Values": ["-4732.446"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5226"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1548"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3095"]}, {"Name": "BYTES", "Values": ["109206540"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.154779, "Latitude": 63.786578}, {"Longitude": -145.309454, "Latitude": 64.237313}, {"Longitude": -146.522609, "Latitude": 64.169947}, {"Longitude": -146.348524, "Latitude": 63.719606}, {"Longitude": -145.154779, "Latitude": 63.786578}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T09:34:57.000Z", "Type": "Insert"}, {"Date": "2011-01-29T09:34:57.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_41883_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_41883_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T09:34:57.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.14, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.154779, 63.786578], [-145.309454, 64.237313], [-146.522609, 64.169947], [-146.348524, 63.719606], [-145.154779, 63.786578]]], "type": "Polygon"}, "baseline": {"insarBaseline": 743.5046}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109343524, "centerLat": 63.9796, "centerLon": -145.8206, "faradayRotation": null, "fileID": "R1_42226_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "28c045e9e3c8fbd5a286b12a0fa24ea9", "offNadirAngle": -1.0, "orbit": 42226, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-21T20:14:38.000Z", "processingLevel": "L0", "sceneName": "R1_42226_FN4_F160", "sensor": "SAR", "startTime": "2003-12-07T03:26:57.000Z", "stopTime": "2003-12-07T03:27:05.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_42226_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_42226_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1776, "perpendicularBaseline": 1389}, "meta": {"concept-type": "granule", "concept-id": "G1207725163-ASF", "revision-id": 1, "native-id": "R1_42226_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T14:44:49.820Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-12-07T03:26:57.000Z", "EndingDateTime": "2003-12-07T03:27:05.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 42226}], "GranuleUR": "R1_42226_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["28c045e9e3c8fbd5a286b12a0fa24ea9"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1389.0697"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-12-07T03:27:05Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8206"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-21 20:14:38.163908"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3351"]}, {"Name": "DOPPLER", "Values": ["-4732.235"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5091"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1413"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.2959"]}, {"Name": "BYTES", "Values": ["109343524"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.14126, "Latitude": 63.786597}, {"Longitude": -145.295906, "Latitude": 64.237295}, {"Longitude": -146.509144, "Latitude": 64.169932}, {"Longitude": -146.33509, "Latitude": 63.719628}, {"Longitude": -145.14126, "Latitude": 63.786597}]}}]}}}, "ProviderDates": [{"Date": "2010-12-21T20:14:38.000Z", "Type": "Insert"}, {"Date": "2010-12-21T20:14:38.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_42226_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_42226_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-21T20:14:38.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.27, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.14126, 63.786597], [-145.295906, 64.237295], [-146.509144, 64.169932], [-146.33509, 63.719628], [-145.14126, 63.786597]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1389.0697}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109776140, "centerLat": 63.9796, "centerLon": -145.8385, "faradayRotation": null, "fileID": "R1_42569_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "196462d6289c94d56d31b657517bc1fe", "offNadirAngle": -1.0, "orbit": 42569, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-08-01T16:27:56.000Z", "processingLevel": "L0", "sceneName": "R1_42569_FN4_F160", "sensor": "SAR", "startTime": "2003-12-31T03:26:56.000Z", "stopTime": "2003-12-31T03:27:04.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_42569_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_42569_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1800, "perpendicularBaseline": 714}, "meta": {"concept-type": "granule", "concept-id": "G1207199513-ASF", "revision-id": 1, "native-id": "R1_42569_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T00:49:20.699Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2003-12-31T03:26:56.000Z", "EndingDateTime": "2003-12-31T03:27:04.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 42569}], "GranuleUR": "R1_42569_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["196462d6289c94d56d31b657517bc1fe"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["713.5742"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2003-12-31T03:27:04Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8385"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-08-01 16:27:56.558722"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3529"]}, {"Name": "DOPPLER", "Values": ["-4731.848"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.527"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.159"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3137"]}, {"Name": "BYTES", "Values": ["109776140"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.159034, "Latitude": 63.786618}, {"Longitude": -145.313744, "Latitude": 64.237312}, {"Longitude": -146.52704, "Latitude": 64.169911}, {"Longitude": -146.352921, "Latitude": 63.719613}, {"Longitude": -145.159034, "Latitude": 63.786618}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T18:36:07.000Z", "Type": "Insert"}, {"Date": "2011-08-01T16:27:56.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_42569_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_42569_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-08-01T16:27:56.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.69, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.159034, 63.786618], [-145.313744, 64.237312], [-146.52704, 64.169911], [-146.352921, 63.719613], [-145.159034, 63.786618]]], "type": "Polygon"}, "baseline": {"insarBaseline": 713.5742}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 108741568, "centerLat": 63.9796, "centerLon": -145.8307, "faradayRotation": null, "fileID": "R1_43255_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "95ae638800310e315fc79cbf0c0f9e8b", "offNadirAngle": -1.0, "orbit": 43255, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-05T21:25:47.000Z", "processingLevel": "L0", "sceneName": "R1_43255_FN4_F160", "sensor": "SAR", "startTime": "2004-02-17T03:26:47.000Z", "stopTime": "2004-02-17T03:26:55.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_43255_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_43255_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1848, "perpendicularBaseline": 1220}, "meta": {"concept-type": "granule", "concept-id": "G1207964120-ASF", "revision-id": 1, "native-id": "R1_43255_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T20:19:44.288Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-02-17T03:26:47.000Z", "EndingDateTime": "2004-02-17T03:26:55.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 43255}], "GranuleUR": "R1_43255_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["95ae638800310e315fc79cbf0c0f9e8b"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1219.9622"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-02-17T03:26:55Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8307"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-05 21:25:47.320987"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3452"]}, {"Name": "DOPPLER", "Values": ["-4731.278"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5194"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1511"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3059"]}, {"Name": "BYTES", "Values": ["108741568"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.151116, "Latitude": 63.78661}, {"Longitude": -145.305927, "Latitude": 64.237324}, {"Longitude": -146.519407, "Latitude": 64.169866}, {"Longitude": -146.345183, "Latitude": 63.719548}, {"Longitude": -145.151116, "Latitude": 63.78661}]}}]}}}, "ProviderDates": [{"Date": "2011-01-05T21:25:47.000Z", "Type": "Insert"}, {"Date": "2011-01-05T21:25:47.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_43255_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_43255_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-05T21:25:47.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 103.7, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.151116, 63.78661], [-145.305927, 64.237324], [-146.519407, 64.169866], [-146.345183, 63.719548], [-145.151116, 63.78661]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1219.9622}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109088168, "centerLat": 63.9796, "centerLon": -145.8404, "faradayRotation": null, "fileID": "R1_43598_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9ea199c1188a7512c4968cd2dbf5aa73", "offNadirAngle": -1.0, "orbit": 43598, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-29T16:34:56.000Z", "processingLevel": "L0", "sceneName": "R1_43598_FN4_F160", "sensor": "SAR", "startTime": "2004-03-12T03:26:47.000Z", "stopTime": "2004-03-12T03:26:55.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_43598_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_43598_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1872, "perpendicularBaseline": 761}, "meta": {"concept-type": "granule", "concept-id": "G1207578906-ASF", "revision-id": 1, "native-id": "R1_43598_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T10:49:29.844Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-03-12T03:26:47.000Z", "EndingDateTime": "2004-03-12T03:26:55.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 43598}], "GranuleUR": "R1_43598_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9ea199c1188a7512c4968cd2dbf5aa73"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["760.6408"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-03-12T03:26:55Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8404"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-29 16:34:56.832366"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3548"]}, {"Name": "DOPPLER", "Values": ["-4730.998"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5291"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1608"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3157"]}, {"Name": "BYTES", "Values": ["109088168"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.160804, "Latitude": 63.78661}, {"Longitude": -145.315659, "Latitude": 64.237326}, {"Longitude": -146.529084, "Latitude": 64.169844}, {"Longitude": -146.354817, "Latitude": 63.719525}, {"Longitude": -145.160804, "Latitude": 63.78661}]}}]}}}, "ProviderDates": [{"Date": "2010-12-29T16:34:56.000Z", "Type": "Insert"}, {"Date": "2010-12-29T16:34:56.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_43598_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_43598_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-29T16:34:56.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.03, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.160804, 63.78661], [-145.315659, 64.237326], [-146.529084, 64.169844], [-146.354817, 63.719525], [-145.160804, 63.78661]]], "type": "Polygon"}, "baseline": {"insarBaseline": 760.6408}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110399684, "centerLat": 63.9796, "centerLon": -145.8405, "faradayRotation": null, "fileID": "R1_43941_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "dc2b25d4bdce44661e85a729e8afceeb", "offNadirAngle": -1.0, "orbit": 43941, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-02-01T02:37:39.000Z", "processingLevel": "L0", "sceneName": "R1_43941_FN4_F160", "sensor": "SAR", "startTime": "2004-04-05T03:26:47.000Z", "stopTime": "2004-04-05T03:26:54.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_43941_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_43941_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1896, "perpendicularBaseline": 732}, "meta": {"concept-type": "granule", "concept-id": "G1208195782-ASF", "revision-id": 1, "native-id": "R1_43941_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T01:47:08.582Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-04-05T03:26:47.000Z", "EndingDateTime": "2004-04-05T03:26:54.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 43941}], "GranuleUR": "R1_43941_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["dc2b25d4bdce44661e85a729e8afceeb"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["731.8908"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-04-05T03:26:54Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8405"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-02-01 02:37:39.962907"]}, {"Name": "NEAR_START_LON", "Values": ["-146.355"]}, {"Name": "DOPPLER", "Values": ["-4730.783"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5292"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.161"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3158"]}, {"Name": "BYTES", "Values": ["110399684"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.16097, "Latitude": 63.786615}, {"Longitude": -145.315752, "Latitude": 64.237336}, {"Longitude": -146.529167, "Latitude": 64.169896}, {"Longitude": -146.354973, "Latitude": 63.71957}, {"Longitude": -145.16097, "Latitude": 63.786615}]}}]}}}, "ProviderDates": [{"Date": "2011-02-01T02:37:39.000Z", "Type": "Insert"}, {"Date": "2011-02-01T02:37:39.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_43941_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_43941_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-02-01T02:37:39.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.28, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.16097, 63.786615], [-145.315752, 64.237336], [-146.529167, 64.169896], [-146.354973, 63.71957], [-145.16097, 63.786615]]], "type": "Polygon"}, "baseline": {"insarBaseline": 731.8908}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109907624, "centerLat": 63.9796, "centerLon": -145.895, "faradayRotation": null, "fileID": "R1_44284_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "90eaf7fffa4907a5202d0a81f0a9e966", "offNadirAngle": -1.0, "orbit": 44284, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-02-01T02:35:39.000Z", "processingLevel": "L0", "sceneName": "R1_44284_FN4_F160", "sensor": "SAR", "startTime": "2004-04-29T03:27:00.000Z", "stopTime": "2004-04-29T03:27:08.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_44284_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_44284_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1920, "perpendicularBaseline": -1816}, "meta": {"concept-type": "granule", "concept-id": "G1207364259-ASF", "revision-id": 1, "native-id": "R1_44284_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T04:35:35.960Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-04-29T03:27:00.000Z", "EndingDateTime": "2004-04-29T03:27:08.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 44284}], "GranuleUR": "R1_44284_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["90eaf7fffa4907a5202d0a81f0a9e966"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["-1815.652"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-04-29T03:27:08Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.895"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-02-01 02:35:39.446636"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4094"]}, {"Name": "DOPPLER", "Values": ["-4730.295"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5835"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2157"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3704"]}, {"Name": "BYTES", "Values": ["109907624"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.215709, "Latitude": 63.786579}, {"Longitude": -145.370373, "Latitude": 64.237289}, {"Longitude": -146.583511, "Latitude": 64.169917}, {"Longitude": -146.409441, "Latitude": 63.719601}, {"Longitude": -145.215709, "Latitude": 63.786579}]}}]}}}, "ProviderDates": [{"Date": "2011-02-01T02:35:39.000Z", "Type": "Insert"}, {"Date": "2011-02-01T02:35:39.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_44284_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_44284_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-02-01T02:35:39.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.81, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.215709, 63.786579], [-145.370373, 64.237289], [-146.583511, 64.169917], [-146.409441, 63.719601], [-145.215709, 63.786579]]], "type": "Polygon"}, "baseline": {"insarBaseline": -1815.652}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110194400, "centerLat": 63.9796, "centerLon": -145.8406, "faradayRotation": null, "fileID": "R1_44970_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "a028f338819f7188571b762571f0e04d", "offNadirAngle": -1.0, "orbit": 44970, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-01T21:37:48.000Z", "processingLevel": "L0", "sceneName": "R1_44970_FN4_F160", "sensor": "SAR", "startTime": "2004-06-16T03:26:43.000Z", "stopTime": "2004-06-16T03:26:51.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_44970_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_44970_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 1968, "perpendicularBaseline": 791}, "meta": {"concept-type": "granule", "concept-id": "G1208272910-ASF", "revision-id": 1, "native-id": "R1_44970_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T04:07:16.295Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-06-16T03:26:43.000Z", "EndingDateTime": "2004-06-16T03:26:51.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 44970}], "GranuleUR": "R1_44970_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["a028f338819f7188571b762571f0e04d"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["791.178"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-06-16T03:26:51Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8406"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7196"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-01 21:37:48.733711"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3552"]}, {"Name": "DOPPLER", "Values": ["-4729.847"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5293"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1611"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3158"]}, {"Name": "BYTES", "Values": ["110194400"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.161122, "Latitude": 63.786584}, {"Longitude": -145.315777, "Latitude": 64.237316}, {"Longitude": -146.529282, "Latitude": 64.169936}, {"Longitude": -146.355213, "Latitude": 63.719598}, {"Longitude": -145.161122, "Latitude": 63.786584}]}}]}}}, "ProviderDates": [{"Date": "2011-01-01T21:37:48.000Z", "Type": "Insert"}, {"Date": "2011-01-01T21:37:48.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_44970_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_44970_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-01T21:37:48.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.08, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.161122, 63.786584], [-145.315777, 64.237316], [-146.529282, 64.169936], [-146.355213, 63.719598], [-145.161122, 63.786584]]], "type": "Polygon"}, "baseline": {"insarBaseline": 791.178}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109911522, "centerLat": 63.9796, "centerLon": -145.8334, "faradayRotation": null, "fileID": "R1_45656_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "e978e54f3372061a88e6a18c3870ece5", "offNadirAngle": -1.0, "orbit": 45656, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-01T20:37:14.000Z", "processingLevel": "L0", "sceneName": "R1_45656_FN4_F160", "sensor": "SAR", "startTime": "2004-08-03T03:26:35.000Z", "stopTime": "2004-08-03T03:26:43.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_45656_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_45656_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2016, "perpendicularBaseline": 1329}, "meta": {"concept-type": "granule", "concept-id": "G1207747512-ASF", "revision-id": 1, "native-id": "R1_45656_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T15:36:23.365Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-08-03T03:26:35.000Z", "EndingDateTime": "2004-08-03T03:26:43.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 45656}], "GranuleUR": "R1_45656_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["e978e54f3372061a88e6a18c3870ece5"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2373"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1329.2969"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-08-03T03:26:43Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8334"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-01 20:37:14.201580"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3481"]}, {"Name": "DOPPLER", "Values": ["-4729.135"]}, {"Name": "FAR_START_LAT", "Values": ["63.7866"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5223"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1538"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1699"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3085"]}, {"Name": "BYTES", "Values": ["109911522"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.153761, "Latitude": 63.786614}, {"Longitude": -145.308535, "Latitude": 64.237316}, {"Longitude": -146.522263, "Latitude": 64.169856}, {"Longitude": -146.348073, "Latitude": 63.719549}, {"Longitude": -145.153761, "Latitude": 63.786614}]}}]}}}, "ProviderDates": [{"Date": "2011-01-01T20:37:14.000Z", "Type": "Insert"}, {"Date": "2011-01-01T20:37:14.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_45656_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_45656_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-01T20:37:14.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.81, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.153761, 63.786614], [-145.308535, 64.237316], [-146.522263, 64.169856], [-146.348073, 63.719549], [-145.153761, 63.786614]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1329.2969}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109953109, "centerLat": 63.9796, "centerLon": -145.8501, "faradayRotation": null, "fileID": "R1_46342_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "1331756ad911335d0143b6d72fe508d4", "offNadirAngle": -1.0, "orbit": 46342, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-14T14:14:17.000Z", "processingLevel": "L0", "sceneName": "R1_46342_FN4_F160", "sensor": "SAR", "startTime": "2004-09-20T03:26:34.000Z", "stopTime": "2004-09-20T03:26:41.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_46342_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_46342_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2064, "perpendicularBaseline": 718}, "meta": {"concept-type": "granule", "concept-id": "G1207263744-ASF", "revision-id": 1, "native-id": "R1_46342_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T02:23:30.088Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-09-20T03:26:34.000Z", "EndingDateTime": "2004-09-20T03:26:41.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 46342}], "GranuleUR": "R1_46342_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["1331756ad911335d0143b6d72fe508d4"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["717.6187"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-09-20T03:26:41Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8501"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-14 14:14:17.891791"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3647"]}, {"Name": "DOPPLER", "Values": ["-4727.688"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5391"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1703"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3253"]}, {"Name": "BYTES", "Values": ["109953109"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.170305, "Latitude": 63.786696}, {"Longitude": -145.325255, "Latitude": 64.237385}, {"Longitude": -146.539075, "Latitude": 64.169826}, {"Longitude": -146.364709, "Latitude": 63.719534}, {"Longitude": -145.170305, "Latitude": 63.786696}]}}]}}}, "ProviderDates": [{"Date": "2011-01-14T14:14:17.000Z", "Type": "Insert"}, {"Date": "2011-01-14T14:14:17.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_46342_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_46342_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-14T14:14:17.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.85, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.170305, 63.786696], [-145.325255, 64.237385], [-146.539075, 64.169826], [-146.364709, 63.719534], [-145.170305, 63.786696]]], "type": "Polygon"}, "baseline": {"insarBaseline": 717.6187}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109718656, "centerLat": 63.9796, "centerLon": -145.8571, "faradayRotation": null, "fileID": "R1_47371_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "dc7b96de8adfa0666efe1a1bbf3db55d", "offNadirAngle": -1.0, "orbit": 47371, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-22T01:47:45.000Z", "processingLevel": "L0", "sceneName": "R1_47371_FN4_F160", "sensor": "SAR", "startTime": "2004-12-01T03:26:29.000Z", "stopTime": "2004-12-01T03:26:37.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_47371_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_47371_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2136, "perpendicularBaseline": 588}, "meta": {"concept-type": "granule", "concept-id": "G1207611285-ASF", "revision-id": 1, "native-id": "R1_47371_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T12:00:00.663Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-12-01T03:26:29.000Z", "EndingDateTime": "2004-12-01T03:26:37.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 47371}], "GranuleUR": "R1_47371_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["dc7b96de8adfa0666efe1a1bbf3db55d"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["587.9196"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-12-01T03:26:37Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8571"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-22 01:47:45.885205"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3718"]}, {"Name": "DOPPLER", "Values": ["-4728.158"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5462"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1772"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3322"]}, {"Name": "BYTES", "Values": ["109718656"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.17722, "Latitude": 63.786675}, {"Longitude": -145.332168, "Latitude": 64.23736}, {"Longitude": -146.546185, "Latitude": 64.169794}, {"Longitude": -146.371816, "Latitude": 63.719507}, {"Longitude": -145.17722, "Latitude": 63.786675}]}}]}}}, "ProviderDates": [{"Date": "2011-01-22T01:47:45.000Z", "Type": "Insert"}, {"Date": "2011-01-22T01:47:45.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_47371_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_47371_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-22T01:47:45.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.63, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.17722, 63.786675], [-145.332168, 64.23736], [-146.546185, 64.169794], [-146.371816, 63.719507], [-145.17722, 63.786675]]], "type": "Polygon"}, "baseline": {"insarBaseline": 587.9196}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109731560, "centerLat": 63.9796, "centerLon": -145.8501, "faradayRotation": null, "fileID": "R1_47714_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "583dfa9addbd655ec9cc125683dc7973", "offNadirAngle": -1.0, "orbit": 47714, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-08T00:40:55.000Z", "processingLevel": "L0", "sceneName": "R1_47714_FN4_F160", "sensor": "SAR", "startTime": "2004-12-25T03:26:24.000Z", "stopTime": "2004-12-25T03:26:32.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_47714_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_47714_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2160, "perpendicularBaseline": 1044}, "meta": {"concept-type": "granule", "concept-id": "G1208323283-ASF", "revision-id": 1, "native-id": "R1_47714_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T05:43:00.271Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2004-12-25T03:26:24.000Z", "EndingDateTime": "2004-12-25T03:26:32.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 47714}], "GranuleUR": "R1_47714_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["583dfa9addbd655ec9cc125683dc7973"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1044.0672"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2004-12-25T03:26:32Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8501"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-08 00:40:55.806930"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3649"]}, {"Name": "DOPPLER", "Values": ["-4727.485"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5393"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1701"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3251"]}, {"Name": "BYTES", "Values": ["109731560"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.17013, "Latitude": 63.786667}, {"Longitude": -145.325087, "Latitude": 64.237354}, {"Longitude": -146.539278, "Latitude": 64.169771}, {"Longitude": -146.364898, "Latitude": 63.719483}, {"Longitude": -145.17013, "Latitude": 63.786667}]}}]}}}, "ProviderDates": [{"Date": "2011-01-08T00:40:55.000Z", "Type": "Insert"}, {"Date": "2011-01-08T00:40:55.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_47714_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_47714_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-08T00:40:55.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.64, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.17013, 63.786667], [-145.325087, 64.237354], [-146.539278, 64.169771], [-146.364898, 63.719483], [-145.17013, 63.786667]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1044.0672}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109566647, "centerLat": 63.9796, "centerLon": -145.8614, "faradayRotation": null, "fileID": "R1_48400_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "5879f01c69cd859cb2fdae82424534f7", "offNadirAngle": -1.0, "orbit": 48400, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T09:35:14.000Z", "processingLevel": "L0", "sceneName": "R1_48400_FN4_F160", "sensor": "SAR", "startTime": "2005-02-11T03:26:19.000Z", "stopTime": "2005-02-11T03:26:27.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_48400_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_48400_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2208, "perpendicularBaseline": 639}, "meta": {"concept-type": "granule", "concept-id": "G1208137812-ASF", "revision-id": 1, "native-id": "R1_48400_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T00:07:25.198Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-02-11T03:26:19.000Z", "EndingDateTime": "2005-02-11T03:26:27.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 48400}], "GranuleUR": "R1_48400_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["5879f01c69cd859cb2fdae82424534f7"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["639.0899"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-02-11T03:26:27Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8614"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 09:35:14.298705"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3762"]}, {"Name": "DOPPLER", "Values": ["-4727.41"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5506"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1813"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3364"]}, {"Name": "BYTES", "Values": ["109566647"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.181338, "Latitude": 63.786724}, {"Longitude": -145.336404, "Latitude": 64.23743}, {"Longitude": -146.550643, "Latitude": 64.169791}, {"Longitude": -146.376152, "Latitude": 63.719485}, {"Longitude": -145.181338, "Latitude": 63.786724}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T09:35:14.000Z", "Type": "Insert"}, {"Date": "2011-01-29T09:35:14.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_48400_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_48400_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T09:35:14.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.49, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.181338, 63.786724], [-145.336404, 64.23743], [-146.550643, 64.169791], [-146.376152, 63.719485], [-145.181338, 63.786724]]], "type": "Polygon"}, "baseline": {"insarBaseline": 639.0899}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109635544, "centerLat": 63.9796, "centerLon": -145.8528, "faradayRotation": null, "fileID": "R1_48743_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "4b35e620b57d1a62b6b40349b34b8456", "offNadirAngle": -1.0, "orbit": 48743, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-07T09:16:44.000Z", "processingLevel": "L0", "sceneName": "R1_48743_FN4_F160", "sensor": "SAR", "startTime": "2005-03-07T03:26:15.000Z", "stopTime": "2005-03-07T03:26:22.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_48743_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_48743_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2232, "perpendicularBaseline": 1075}, "meta": {"concept-type": "granule", "concept-id": "G1207485606-ASF", "revision-id": 1, "native-id": "R1_48743_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T07:30:12.690Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-03-07T03:26:15.000Z", "EndingDateTime": "2005-03-07T03:26:22.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 48743}], "GranuleUR": "R1_48743_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["4b35e620b57d1a62b6b40349b34b8456"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1074.8998"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-03-07T03:26:22Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8528"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-07 09:16:44.290554"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3675"]}, {"Name": "DOPPLER", "Values": ["-4725.703"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5421"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1726"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3278"]}, {"Name": "BYTES", "Values": ["109635544"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.172642, "Latitude": 63.786733}, {"Longitude": -145.327772, "Latitude": 64.23744}, {"Longitude": -146.5421, "Latitude": 64.169761}, {"Longitude": -146.367545, "Latitude": 63.719454}, {"Longitude": -145.172642, "Latitude": 63.786733}]}}]}}}, "ProviderDates": [{"Date": "2011-01-07T09:16:44.000Z", "Type": "Insert"}, {"Date": "2011-01-07T09:16:44.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_48743_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_48743_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-07T09:16:44.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.55, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.172642, 63.786733], [-145.327772, 64.23744], [-146.5421, 64.169761], [-146.367545, 63.719454], [-145.172642, 63.786733]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1074.8998}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109986221, "centerLat": 63.9796, "centerLon": -145.8575, "faradayRotation": null, "fileID": "R1_49086_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "5d5f01efc3a79e6405c24a130b890f9c", "offNadirAngle": -1.0, "orbit": 49086, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-27T15:56:10.000Z", "processingLevel": "L0", "sceneName": "R1_49086_FN4_F160", "sensor": "SAR", "startTime": "2005-03-31T03:26:15.000Z", "stopTime": "2005-03-31T03:26:23.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_49086_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_49086_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2256, "perpendicularBaseline": 806}, "meta": {"concept-type": "granule", "concept-id": "G1207922541-ASF", "revision-id": 1, "native-id": "R1_49086_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T19:40:40.055Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-03-31T03:26:15.000Z", "EndingDateTime": "2005-03-31T03:26:23.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 49086}], "GranuleUR": "R1_49086_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["5d5f01efc3a79e6405c24a130b890f9c"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["806.2711"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-03-31T03:26:23Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8575"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-27 15:56:10.606667"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3722"]}, {"Name": "DOPPLER", "Values": ["-4726.578"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5468"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1774"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3325"]}, {"Name": "BYTES", "Values": ["109986221"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.17739, "Latitude": 63.786726}, {"Longitude": -145.332538, "Latitude": 64.237434}, {"Longitude": -146.546798, "Latitude": 64.169753}, {"Longitude": -146.372226, "Latitude": 63.719444}, {"Longitude": -145.17739, "Latitude": 63.786726}]}}]}}}, "ProviderDates": [{"Date": "2010-12-27T15:56:10.000Z", "Type": "Insert"}, {"Date": "2010-12-27T15:56:10.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_49086_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_49086_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-27T15:56:10.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.89, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.17739, 63.786726], [-145.332538, 64.237434], [-146.546798, 64.169753], [-146.372226, 63.719444], [-145.17739, 63.786726]]], "type": "Polygon"}, "baseline": {"insarBaseline": 806.2711}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109822380, "centerLat": 63.9796, "centerLon": -145.8459, "faradayRotation": null, "fileID": "R1_49772_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "a8a5dda69a9e1fa22f51b38fffa4a9a8", "offNadirAngle": -1.0, "orbit": 49772, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T04:10:40.000Z", "processingLevel": "L0", "sceneName": "R1_49772_FN4_F160", "sensor": "SAR", "startTime": "2005-05-18T03:26:11.000Z", "stopTime": "2005-05-18T03:26:19.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_49772_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_49772_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2304, "perpendicularBaseline": 1358}, "meta": {"concept-type": "granule", "concept-id": "G1207260922-ASF", "revision-id": 1, "native-id": "R1_49772_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T02:20:48.251Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-05-18T03:26:11.000Z", "EndingDateTime": "2005-05-18T03:26:19.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 49772}], "GranuleUR": "R1_49772_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["a8a5dda69a9e1fa22f51b38fffa4a9a8"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1357.9352"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-05-18T03:26:19Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8459"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 04:10:40.397055"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3607"]}, {"Name": "DOPPLER", "Values": ["-4725.587"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5352"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1658"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3208"]}, {"Name": "BYTES", "Values": ["109822380"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.16578, "Latitude": 63.786688}, {"Longitude": -145.320831, "Latitude": 64.237405}, {"Longitude": -146.535182, "Latitude": 64.169768}, {"Longitude": -146.360706, "Latitude": 63.71945}, {"Longitude": -145.16578, "Latitude": 63.786688}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T04:10:40.000Z", "Type": "Insert"}, {"Date": "2011-01-29T04:10:40.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_49772_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_49772_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T04:10:40.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.73, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.16578, 63.786688], [-145.320831, 64.237405], [-146.535182, 64.169768], [-146.360706, 63.71945], [-145.16578, 63.786688]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1357.9352}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110096868, "centerLat": 63.9796, "centerLon": -145.8604, "faradayRotation": null, "fileID": "R1_50115_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "dfd13c3da97ee8c4198e2b766e2c2ee2", "offNadirAngle": -1.0, "orbit": 50115, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-24T22:52:09.000Z", "processingLevel": "L0", "sceneName": "R1_50115_FN4_F160", "sensor": "SAR", "startTime": "2005-06-11T03:26:14.000Z", "stopTime": "2005-06-11T03:26:21.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_50115_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_50115_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2328, "perpendicularBaseline": 696}, "meta": {"concept-type": "granule", "concept-id": "G1207711977-ASF", "revision-id": 1, "native-id": "R1_50115_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T14:15:22.241Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-06-11T03:26:14.000Z", "EndingDateTime": "2005-06-11T03:26:21.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 50115}], "GranuleUR": "R1_50115_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["dfd13c3da97ee8c4198e2b766e2c2ee2"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["696.4606"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-06-11T03:26:21Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8604"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-24 22:52:09.325345"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3752"]}, {"Name": "DOPPLER", "Values": ["-4724.816"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5496"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1803"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3353"]}, {"Name": "BYTES", "Values": ["110096868"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.18033, "Latitude": 63.786668}, {"Longitude": -145.335289, "Latitude": 64.23739}, {"Longitude": -146.549577, "Latitude": 64.169801}, {"Longitude": -146.375193, "Latitude": 63.719477}, {"Longitude": -145.18033, "Latitude": 63.786668}]}}]}}}, "ProviderDates": [{"Date": "2010-12-24T22:52:09.000Z", "Type": "Insert"}, {"Date": "2010-12-24T22:52:09.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_50115_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_50115_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-24T22:52:09.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.99, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.18033, 63.786668], [-145.335289, 64.23739], [-146.549577, 64.169801], [-146.375193, 63.719477], [-145.18033, 63.786668]]], "type": "Polygon"}, "baseline": {"insarBaseline": 696.4606}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110183235, "centerLat": 63.9796, "centerLon": -145.8427, "faradayRotation": null, "fileID": "R1_50458_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "ad6e9cc0c68c4faec0d3831f63e98f31", "offNadirAngle": -1.0, "orbit": 50458, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-24T20:58:46.000Z", "processingLevel": "L0", "sceneName": "R1_50458_FN4_F160", "sensor": "SAR", "startTime": "2005-07-05T03:26:07.000Z", "stopTime": "2005-07-05T03:26:15.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_50458_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_50458_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2352, "perpendicularBaseline": 1511}, "meta": {"concept-type": "granule", "concept-id": "G1207886834-ASF", "revision-id": 1, "native-id": "R1_50458_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T19:03:17.009Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-07-05T03:26:07.000Z", "EndingDateTime": "2005-07-05T03:26:15.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 50458}], "GranuleUR": "R1_50458_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["ad6e9cc0c68c4faec0d3831f63e98f31"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1511.4137"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-07-05T03:26:15Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8427"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7195"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-24 20:58:46.181105"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3576"]}, {"Name": "DOPPLER", "Values": ["-4725.3"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.532"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1626"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1698"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3176"]}, {"Name": "BYTES", "Values": ["110183235"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.162635, "Latitude": 63.786693}, {"Longitude": -145.317592, "Latitude": 64.237397}, {"Longitude": -146.531951, "Latitude": 64.169802}, {"Longitude": -146.357567, "Latitude": 63.719496}, {"Longitude": -145.162635, "Latitude": 63.786693}]}}]}}}, "ProviderDates": [{"Date": "2010-12-24T20:58:46.000Z", "Type": "Insert"}, {"Date": "2010-12-24T20:58:46.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_50458_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_50458_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-24T20:58:46.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.07, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.162635, 63.786693], [-145.317592, 64.237397], [-146.531951, 64.169802], [-146.357567, 63.719496], [-145.162635, 63.786693]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1511.4137}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110778367, "centerLat": 63.9796, "centerLon": -145.8714, "faradayRotation": null, "fileID": "R1_50801_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "0337e45af9547422eb2d06213a15e06f", "offNadirAngle": -1.0, "orbit": 50801, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-14T11:42:50.000Z", "processingLevel": "L0", "sceneName": "R1_50801_FN4_F160", "sensor": "SAR", "startTime": "2005-07-29T03:26:09.000Z", "stopTime": "2005-07-29T03:26:17.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_50801_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_50801_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2376, "perpendicularBaseline": 544}, "meta": {"concept-type": "granule", "concept-id": "G1207749944-ASF", "revision-id": 1, "native-id": "R1_50801_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T15:42:08.072Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-07-29T03:26:09.000Z", "EndingDateTime": "2005-07-29T03:26:17.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 50801}], "GranuleUR": "R1_50801_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["0337e45af9547422eb2d06213a15e06f"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["544.246"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-07-29T03:26:17Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8714"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-14 11:42:50.059958"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3863"]}, {"Name": "DOPPLER", "Values": ["-4723.707"]}, {"Name": "FAR_START_LAT", "Values": ["63.7867"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5608"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1911"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1697"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3462"]}, {"Name": "BYTES", "Values": ["110778367"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.191097, "Latitude": 63.78674}, {"Longitude": -145.346218, "Latitude": 64.237397}, {"Longitude": -146.560816, "Latitude": 64.169696}, {"Longitude": -146.386269, "Latitude": 63.719439}, {"Longitude": -145.191097, "Latitude": 63.78674}]}}]}}}, "ProviderDates": [{"Date": "2011-01-14T11:42:50.000Z", "Type": "Insert"}, {"Date": "2011-01-14T11:42:50.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_50801_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_50801_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-14T11:42:50.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.64, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.191097, 63.78674], [-145.346218, 64.237397], [-146.560816, 64.169696], [-146.386269, 63.719439], [-145.191097, 63.78674]]], "type": "Polygon"}, "baseline": {"insarBaseline": 544.246}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110234303, "centerLat": 63.9796, "centerLon": -145.8594, "faradayRotation": null, "fileID": "R1_51144_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "15dd50cae41c04a46f93825cf6200df2", "offNadirAngle": -1.0, "orbit": 51144, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-28T04:50:54.000Z", "processingLevel": "L0", "sceneName": "R1_51144_FN4_F160", "sensor": "SAR", "startTime": "2005-08-22T03:26:04.000Z", "stopTime": "2005-08-22T03:26:12.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_51144_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_51144_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2400, "perpendicularBaseline": 1266}, "meta": {"concept-type": "granule", "concept-id": "G1206936745-ASF", "revision-id": 1, "native-id": "R1_51144_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-03T19:16:50.961Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-08-22T03:26:04.000Z", "EndingDateTime": "2005-08-22T03:26:12.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 51144}], "GranuleUR": "R1_51144_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["15dd50cae41c04a46f93825cf6200df2"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1266.1607"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-08-22T03:26:12Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8594"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-28 04:50:54.528343"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3744"]}, {"Name": "DOPPLER", "Values": ["-4723.602"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.549"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.179"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1697"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3342"]}, {"Name": "BYTES", "Values": ["110234303"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.178957, "Latitude": 63.786789}, {"Longitude": -145.334168, "Latitude": 64.237435}, {"Longitude": -146.549004, "Latitude": 64.169673}, {"Longitude": -146.374362, "Latitude": 63.719428}, {"Longitude": -145.178957, "Latitude": 63.786789}]}}]}}}, "ProviderDates": [{"Date": "2010-12-28T04:50:54.000Z", "Type": "Insert"}, {"Date": "2010-12-28T04:50:54.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_51144_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_51144_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-28T04:50:54.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.12, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.178957, 63.786789], [-145.334168, 64.237435], [-146.549004, 64.169673], [-146.374362, 63.719428], [-145.178957, 63.786789]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1266.1607}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109720058, "centerLat": 63.9796, "centerLon": -145.8717, "faradayRotation": null, "fileID": "R1_51487_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9af52f16d51b1155d80babde06b7b11f", "offNadirAngle": -1.0, "orbit": 51487, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T09:24:47.000Z", "processingLevel": "L0", "sceneName": "R1_51487_FN4_F160", "sensor": "SAR", "startTime": "2005-09-15T03:26:05.000Z", "stopTime": "2005-09-15T03:26:13.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_51487_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_51487_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2424, "perpendicularBaseline": 695}, "meta": {"concept-type": "granule", "concept-id": "G1207777298-ASF", "revision-id": 1, "native-id": "R1_51487_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T16:44:34.058Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-09-15T03:26:05.000Z", "EndingDateTime": "2005-09-15T03:26:13.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 51487}], "GranuleUR": "R1_51487_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9af52f16d51b1155d80babde06b7b11f"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["695.0525"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-09-15T03:26:13Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8717"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 09:24:47.338951"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3866"]}, {"Name": "DOPPLER", "Values": ["-4723.721"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5613"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1913"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3465"]}, {"Name": "BYTES", "Values": ["109720058"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.191268, "Latitude": 63.786785}, {"Longitude": -145.34653, "Latitude": 64.237428}, {"Longitude": -146.5613, "Latitude": 64.169642}, {"Longitude": -146.386609, "Latitude": 63.7194}, {"Longitude": -145.191268, "Latitude": 63.786785}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T09:24:47.000Z", "Type": "Insert"}, {"Date": "2011-01-29T09:24:47.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_51487_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_51487_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T09:24:47.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.63, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.191268, 63.786785], [-145.34653, 64.237428], [-146.5613, 64.169642], [-146.386609, 63.7194], [-145.191268, 63.786785]]], "type": "Polygon"}, "baseline": {"insarBaseline": 695.0525}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110109757, "centerLat": 63.9796, "centerLon": -145.8736, "faradayRotation": null, "fileID": "R1_51830_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "d324b82f2fb623bbfe6760ca51d2bb26", "offNadirAngle": -1.0, "orbit": 51830, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-29T22:59:53.000Z", "processingLevel": "L0", "sceneName": "R1_51830_FN4_F160", "sensor": "SAR", "startTime": "2005-10-09T03:26:04.000Z", "stopTime": "2005-10-09T03:26:12.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_51830_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_51830_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2448, "perpendicularBaseline": 741}, "meta": {"concept-type": "granule", "concept-id": "G1208280921-ASF", "revision-id": 1, "native-id": "R1_51830_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T04:22:07.061Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2005-10-09T03:26:04.000Z", "EndingDateTime": "2005-10-09T03:26:12.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 51830}], "GranuleUR": "R1_51830_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["d324b82f2fb623bbfe6760ca51d2bb26"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["741.4968"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2005-10-09T03:26:12Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8736"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-29 22:59:53.876866"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3885"]}, {"Name": "DOPPLER", "Values": ["-4722.926"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5633"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.193"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3484"]}, {"Name": "BYTES", "Values": ["110109757"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.193036, "Latitude": 63.786846}, {"Longitude": -145.348375, "Latitude": 64.237478}, {"Longitude": -146.563296, "Latitude": 64.169643}, {"Longitude": -146.388527, "Latitude": 63.719412}, {"Longitude": -145.193036, "Latitude": 63.786846}]}}]}}}, "ProviderDates": [{"Date": "2010-12-29T22:59:53.000Z", "Type": "Insert"}, {"Date": "2010-12-29T22:59:53.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_51830_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_51830_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-29T22:59:53.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.0, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.193036, 63.786846], [-145.348375, 64.237478], [-146.563296, 64.169643], [-146.388527, 63.719412], [-145.193036, 63.786846]]], "type": "Polygon"}, "baseline": {"insarBaseline": 741.4968}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109645522, "centerLat": 63.9796, "centerLon": -145.8666, "faradayRotation": null, "fileID": "R1_53888_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "ad8ee4c8604d83683eeb430a6a200973", "offNadirAngle": -1.0, "orbit": 53888, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T10:43:58.000Z", "processingLevel": "L0", "sceneName": "R1_53888_FN4_F160", "sensor": "SAR", "startTime": "2006-03-02T03:25:47.000Z", "stopTime": "2006-03-02T03:25:55.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_53888_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_53888_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2592, "perpendicularBaseline": 1376}, "meta": {"concept-type": "granule", "concept-id": "G1207758243-ASF", "revision-id": 1, "native-id": "R1_53888_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T16:02:17.766Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-03-02T03:25:47.000Z", "EndingDateTime": "2006-03-02T03:25:55.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 53888}], "GranuleUR": "R1_53888_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["ad8ee4c8604d83683eeb430a6a200973"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1375.7468"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-03-02T03:25:55Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8666"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 10:43:58.415330"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3816"]}, {"Name": "DOPPLER", "Values": ["-4722.109"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5565"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.186"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3414"]}, {"Name": "BYTES", "Values": ["109645522"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.185976, "Latitude": 63.786805}, {"Longitude": -145.341381, "Latitude": 64.237501}, {"Longitude": -146.556455, "Latitude": 64.169635}, {"Longitude": -146.381615, "Latitude": 63.719342}, {"Longitude": -145.185976, "Latitude": 63.786805}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T10:43:58.000Z", "Type": "Insert"}, {"Date": "2011-01-29T10:43:58.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_53888_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_53888_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T10:43:58.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.56, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.185976, 63.786805], [-145.341381, 64.237501], [-146.556455, 64.169635], [-146.381615, 63.719342], [-145.185976, 63.786805]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1375.7468}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110287907, "centerLat": 63.9796, "centerLon": -145.88, "faradayRotation": null, "fileID": "R1_54231_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9789ecf803891b2406788e38691f05ec", "offNadirAngle": -1.0, "orbit": 54231, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-05T20:39:20.000Z", "processingLevel": "L0", "sceneName": "R1_54231_FN4_F160", "sensor": "SAR", "startTime": "2006-03-26T03:25:50.000Z", "stopTime": "2006-03-26T03:25:58.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_54231_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_54231_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2616, "perpendicularBaseline": 682}, "meta": {"concept-type": "granule", "concept-id": "G1207129564-ASF", "revision-id": 1, "native-id": "R1_54231_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-03T22:50:03.099Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-03-26T03:25:50.000Z", "EndingDateTime": "2006-03-26T03:25:58.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 54231}], "GranuleUR": "R1_54231_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9789ecf803891b2406788e38691f05ec"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["681.9545"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-03-26T03:25:58Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.88"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-05 20:39:20.828820"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3949"]}, {"Name": "DOPPLER", "Values": ["-4723.039"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5697"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1994"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1697"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3548"]}, {"Name": "BYTES", "Values": ["110287907"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.199385, "Latitude": 63.786819}, {"Longitude": -145.354755, "Latitude": 64.23752}, {"Longitude": -146.569693, "Latitude": 64.169681}, {"Longitude": -146.394889, "Latitude": 63.719383}, {"Longitude": -145.199385, "Latitude": 63.786819}]}}]}}}, "ProviderDates": [{"Date": "2011-01-05T20:39:20.000Z", "Type": "Insert"}, {"Date": "2011-01-05T20:39:20.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_54231_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_54231_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-05T20:39:20.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.17, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.199385, 63.786819], [-145.354755, 64.23752], [-146.569693, 64.169681], [-146.394889, 63.719383], [-145.199385, 63.786819]]], "type": "Polygon"}, "baseline": {"insarBaseline": 681.9545}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110973291, "centerLat": 63.9796, "centerLon": -145.872, "faradayRotation": null, "fileID": "R1_54574_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "a48df05c6d5526382aa5a10c3808d2f9", "offNadirAngle": -1.0, "orbit": 54574, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-23T21:45:25.000Z", "processingLevel": "L0", "sceneName": "R1_54574_FN4_F160", "sensor": "SAR", "startTime": "2006-04-19T03:25:48.000Z", "stopTime": "2006-04-19T03:25:56.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_54574_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_54574_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2640, "perpendicularBaseline": 1046}, "meta": {"concept-type": "granule", "concept-id": "G1206953392-ASF", "revision-id": 1, "native-id": "R1_54574_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-03T19:47:04.472Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-04-19T03:25:48.000Z", "EndingDateTime": "2006-04-19T03:25:56.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 54574}], "GranuleUR": "R1_54574_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["a48df05c6d5526382aa5a10c3808d2f9"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1045.6595"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-04-19T03:25:56Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.872"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-23 21:45:25.622026"]}, {"Name": "NEAR_START_LON", "Values": ["-146.387"]}, {"Name": "DOPPLER", "Values": ["-4722.259"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5617"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1914"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3468"]}, {"Name": "BYTES", "Values": ["110973291"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.1914, "Latitude": 63.786812}, {"Longitude": -145.346754, "Latitude": 64.237472}, {"Longitude": -146.56174, "Latitude": 64.169627}, {"Longitude": -146.386953, "Latitude": 63.71937}, {"Longitude": -145.1914, "Latitude": 63.786812}]}}]}}}, "ProviderDates": [{"Date": "2010-12-23T21:45:25.000Z", "Type": "Insert"}, {"Date": "2010-12-23T21:45:25.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_54574_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_54574_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-23T21:45:25.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.83, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.1914, 63.786812], [-145.346754, 64.237472], [-146.56174, 64.169627], [-146.386953, 63.71937], [-145.1914, 63.786812]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1045.6595}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110344269, "centerLat": 63.9796, "centerLon": -145.8461, "faradayRotation": null, "fileID": "R1_54917_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "dfda7ec878e3a06c7697f3cab1fa848a", "offNadirAngle": -1.0, "orbit": 54917, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-01T06:51:30.000Z", "processingLevel": "L0", "sceneName": "R1_54917_FN4_F160", "sensor": "SAR", "startTime": "2006-05-13T03:25:48.000Z", "stopTime": "2006-05-13T03:25:56.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_54917_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_54917_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2664, "perpendicularBaseline": 1179}, "meta": {"concept-type": "granule", "concept-id": "G1207585606-ASF", "revision-id": 1, "native-id": "R1_54917_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T11:03:20.403Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-05-13T03:25:48.000Z", "EndingDateTime": "2006-05-13T03:25:56.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 54917}], "GranuleUR": "R1_54917_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["dfda7ec878e3a06c7697f3cab1fa848a"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1179.4631"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-05-13T03:25:56Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8461"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-01 06:51:30.310572"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3611"]}, {"Name": "DOPPLER", "Values": ["-4722.438"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5358"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1655"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1697"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3208"]}, {"Name": "BYTES", "Values": ["110344269"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.165545, "Latitude": 63.786772}, {"Longitude": -145.32078, "Latitude": 64.23744}, {"Longitude": -146.53575, "Latitude": 64.169661}, {"Longitude": -146.361082, "Latitude": 63.719395}, {"Longitude": -145.165545, "Latitude": 63.786772}]}}]}}}, "ProviderDates": [{"Date": "2011-01-01T06:51:30.000Z", "Type": "Insert"}, {"Date": "2011-01-01T06:51:30.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_54917_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_54917_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-01T06:51:30.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.23, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.165545, 63.786772], [-145.32078, 64.23744], [-146.53575, 64.169661], [-146.361082, 63.719395], [-145.165545, 63.786772]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1179.4631}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110121647, "centerLat": 63.9796, "centerLon": -145.8524, "faradayRotation": null, "fileID": "R1_55260_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "788c2fb91f9d3d996cc15e3615f511b8", "offNadirAngle": -1.0, "orbit": 55260, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-06T21:34:26.000Z", "processingLevel": "L0", "sceneName": "R1_55260_FN4_F160", "sensor": "SAR", "startTime": "2006-06-06T03:25:48.000Z", "stopTime": "2006-06-06T03:25:56.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_55260_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_55260_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2688, "perpendicularBaseline": 935}, "meta": {"concept-type": "granule", "concept-id": "G1207206232-ASF", "revision-id": 1, "native-id": "R1_55260_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T01:00:52.006Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-06-06T03:25:48.000Z", "EndingDateTime": "2006-06-06T03:25:56.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 55260}], "GranuleUR": "R1_55260_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["788c2fb91f9d3d996cc15e3615f511b8"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["934.8493"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-06-06T03:25:56Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8524"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-06 21:34:26.298062"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3675"]}, {"Name": "DOPPLER", "Values": ["-4722.24"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5421"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1719"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1697"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3271"]}, {"Name": "BYTES", "Values": ["110121647"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.171898, "Latitude": 63.786778}, {"Longitude": -145.327125, "Latitude": 64.237445}, {"Longitude": -146.542116, "Latitude": 64.169669}, {"Longitude": -146.367456, "Latitude": 63.719403}, {"Longitude": -145.171898, "Latitude": 63.786778}]}}]}}}, "ProviderDates": [{"Date": "2011-01-06T21:34:26.000Z", "Type": "Insert"}, {"Date": "2011-01-06T21:34:26.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_55260_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_55260_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-06T21:34:26.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.02, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.171898, 63.786778], [-145.327125, 64.237445], [-146.542116, 64.169669], [-146.367456, 63.719403], [-145.171898, 63.786778]]], "type": "Polygon"}, "baseline": {"insarBaseline": 934.8493}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110489800, "centerLat": 63.9796, "centerLon": -145.8442, "faradayRotation": null, "fileID": "R1_55603_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "b3253c0f067a3750dcdaa791f8ba6e58", "offNadirAngle": -1.0, "orbit": 55603, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-31T06:47:03.000Z", "processingLevel": "L0", "sceneName": "R1_55603_FN4_F160", "sensor": "SAR", "startTime": "2006-06-30T03:25:44.000Z", "stopTime": "2006-06-30T03:25:52.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_55603_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_55603_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2712, "perpendicularBaseline": 1334}, "meta": {"concept-type": "granule", "concept-id": "G1207759965-ASF", "revision-id": 1, "native-id": "R1_55603_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T16:07:54.723Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-06-30T03:25:44.000Z", "EndingDateTime": "2006-06-30T03:25:52.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 55603}], "GranuleUR": "R1_55603_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["b3253c0f067a3750dcdaa791f8ba6e58"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1333.8738"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-06-30T03:25:52Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8442"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-31 06:47:03.099493"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3592"]}, {"Name": "DOPPLER", "Values": ["-4721.83"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5339"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1636"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1697"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3189"]}, {"Name": "BYTES", "Values": ["110489800"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.163629, "Latitude": 63.786804}, {"Longitude": -145.318858, "Latitude": 64.237474}, {"Longitude": -146.533898, "Latitude": 64.169693}, {"Longitude": -146.359235, "Latitude": 63.719425}, {"Longitude": -145.163629, "Latitude": 63.786804}]}}]}}}, "ProviderDates": [{"Date": "2010-12-31T06:47:03.000Z", "Type": "Insert"}, {"Date": "2010-12-31T06:47:03.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_55603_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_55603_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-31T06:47:03.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.37, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.163629, 63.786804], [-145.318858, 64.237474], [-146.533898, 64.169693], [-146.359235, 63.719425], [-145.163629, 63.786804]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1333.8738}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110506573, "centerLat": 63.9796, "centerLon": -145.8738, "faradayRotation": null, "fileID": "R1_55946_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "94a6a7988a4cb64476c9b548207e0c41", "offNadirAngle": -1.0, "orbit": 55946, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-12-17T06:10:06.000Z", "processingLevel": "L0", "sceneName": "R1_55946_FN4_F160", "sensor": "SAR", "startTime": "2006-07-24T03:25:44.000Z", "stopTime": "2006-07-24T03:25:52.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_55946_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_55946_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2736, "perpendicularBaseline": 1096}, "meta": {"concept-type": "granule", "concept-id": "G1208311345-ASF", "revision-id": 1, "native-id": "R1_55946_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T05:17:57.752Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-07-24T03:25:44.000Z", "EndingDateTime": "2006-07-24T03:25:52.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 55946}], "GranuleUR": "R1_55946_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["94a6a7988a4cb64476c9b548207e0c41"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2374"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1095.6235"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-07-24T03:25:52Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8738"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-12-17 06:10:06.775995"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3889"]}, {"Name": "DOPPLER", "Values": ["-4721.217"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5636"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1932"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3485"]}, {"Name": "BYTES", "Values": ["110506573"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.193229, "Latitude": 63.786779}, {"Longitude": -145.348491, "Latitude": 64.237445}, {"Longitude": -146.563608, "Latitude": 64.169642}, {"Longitude": -146.388911, "Latitude": 63.719377}, {"Longitude": -145.193229, "Latitude": 63.786779}]}}]}}}, "ProviderDates": [{"Date": "2011-12-17T06:10:06.000Z", "Type": "Insert"}, {"Date": "2011-12-17T06:10:06.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_55946_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_55946_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-12-17T06:10:06.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.38, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.193229, 63.786779], [-145.348491, 64.237445], [-146.563608, 64.169642], [-146.388911, 63.719377], [-145.193229, 63.786779]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1095.6235}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110277875, "centerLat": 63.9796, "centerLon": -145.8698, "faradayRotation": null, "fileID": "R1_56289_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "6ce509e62745ae1c4e0ea89f985079fa", "offNadirAngle": -1.0, "orbit": 56289, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-11T18:53:55.000Z", "processingLevel": "L0", "sceneName": "R1_56289_FN4_F160", "sensor": "SAR", "startTime": "2006-08-17T03:25:40.000Z", "stopTime": "2006-08-17T03:25:48.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_56289_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_56289_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2760, "perpendicularBaseline": 1272}, "meta": {"concept-type": "granule", "concept-id": "G1207452355-ASF", "revision-id": 1, "native-id": "R1_56289_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T06:11:09.519Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-08-17T03:25:40.000Z", "EndingDateTime": "2006-08-17T03:25:48.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 56289}], "GranuleUR": "R1_56289_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["6ce509e62745ae1c4e0ea89f985079fa"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1272.2623"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-08-17T03:25:48Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8698"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-11 18:53:55.840573"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3847"]}, {"Name": "DOPPLER", "Values": ["-4721.651"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5596"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1891"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3445"]}, {"Name": "BYTES", "Values": ["110277875"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.18908, "Latitude": 63.786819}, {"Longitude": -145.344482, "Latitude": 64.237503}, {"Longitude": -146.559585, "Latitude": 64.169631}, {"Longitude": -146.384747, "Latitude": 63.71935}, {"Longitude": -145.18908, "Latitude": 63.786819}]}}]}}}, "ProviderDates": [{"Date": "2011-01-11T18:53:55.000Z", "Type": "Insert"}, {"Date": "2011-01-11T18:53:55.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_56289_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_56289_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-11T18:53:55.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.16, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.18908, 63.786819], [-145.344482, 64.237503], [-146.559585, 64.169631], [-146.384747, 63.71935], [-145.18908, 63.786819]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1272.2623}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110100495, "centerLat": 63.9796, "centerLon": -145.8834, "faradayRotation": null, "fileID": "R1_56632_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "290b3cf8b57d11426adce05310480b56", "offNadirAngle": -1.0, "orbit": 56632, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-12-17T05:49:43.000Z", "processingLevel": "L0", "sceneName": "R1_56632_FN4_F160", "sensor": "SAR", "startTime": "2006-09-10T03:25:43.000Z", "stopTime": "2006-09-10T03:25:51.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_56632_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_56632_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2784, "perpendicularBaseline": 722}, "meta": {"concept-type": "granule", "concept-id": "G1207935467-ASF", "revision-id": 1, "native-id": "R1_56632_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T19:51:03.285Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-09-10T03:25:43.000Z", "EndingDateTime": "2006-09-10T03:25:51.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 56632}], "GranuleUR": "R1_56632_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["290b3cf8b57d11426adce05310480b56"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["721.5196"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-09-10T03:25:51Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8834"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-12-17 05:49:43.087411"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3984"]}, {"Name": "DOPPLER", "Values": ["-4721.426"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5732"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2027"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3581"]}, {"Name": "BYTES", "Values": ["110100495"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.202675, "Latitude": 63.786831}, {"Longitude": -145.358081, "Latitude": 64.237488}, {"Longitude": -146.573207, "Latitude": 64.169609}, {"Longitude": -146.398367, "Latitude": 63.719355}, {"Longitude": -145.202675, "Latitude": 63.786831}]}}]}}}, "ProviderDates": [{"Date": "2011-12-17T05:49:43.000Z", "Type": "Insert"}, {"Date": "2011-12-17T05:49:43.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_56632_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_56632_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-12-17T05:49:43.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.0, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.202675, 63.786831], [-145.358081, 64.237488], [-146.573207, 64.169609], [-146.398367, 63.719355], [-145.202675, 63.786831]]], "type": "Polygon"}, "baseline": {"insarBaseline": 721.5196}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109895978, "centerLat": 63.9796, "centerLon": -145.8774, "faradayRotation": null, "fileID": "R1_56975_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "40669032b65aad1e14258e9ab3eeb407", "offNadirAngle": -1.0, "orbit": 56975, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-05T21:56:29.000Z", "processingLevel": "L0", "sceneName": "R1_56975_FN4_F160", "sensor": "SAR", "startTime": "2006-10-04T03:25:41.000Z", "stopTime": "2006-10-04T03:25:49.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_56975_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_56975_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2808, "perpendicularBaseline": 1131}, "meta": {"concept-type": "granule", "concept-id": "G1207456362-ASF", "revision-id": 1, "native-id": "R1_56975_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T06:22:14.854Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-10-04T03:25:41.000Z", "EndingDateTime": "2006-10-04T03:25:49.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 56975}], "GranuleUR": "R1_56975_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["40669032b65aad1e14258e9ab3eeb407"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1131.3136"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-10-04T03:25:49Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8774"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-05 21:56:29.043731"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3924"]}, {"Name": "DOPPLER", "Values": ["-4721.225"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5674"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1965"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3521"]}, {"Name": "BYTES", "Values": ["109895978"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.196549, "Latitude": 63.786844}, {"Longitude": -145.35205, "Latitude": 64.23751}, {"Longitude": -146.567361, "Latitude": 64.169575}, {"Longitude": -146.392422, "Latitude": 63.719312}, {"Longitude": -145.196549, "Latitude": 63.786844}]}}]}}}, "ProviderDates": [{"Date": "2011-01-05T21:56:29.000Z", "Type": "Insert"}, {"Date": "2011-01-05T21:56:29.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_56975_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_56975_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-05T21:56:29.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.8, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.196549, 63.786844], [-145.35205, 64.23751], [-146.567361, 64.169575], [-146.392422, 63.719312], [-145.196549, 63.786844]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1131.3136}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110463822, "centerLat": 63.9796, "centerLon": -145.8824, "faradayRotation": null, "fileID": "R1_57318_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "5ee70d8b04de892eb4d03338562cc609", "offNadirAngle": -1.0, "orbit": 57318, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-26T13:36:33.000Z", "processingLevel": "L0", "sceneName": "R1_57318_FN4_F160", "sensor": "SAR", "startTime": "2006-10-28T03:25:41.000Z", "stopTime": "2006-10-28T03:25:49.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_57318_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_57318_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2832, "perpendicularBaseline": 871}, "meta": {"concept-type": "granule", "concept-id": "G1206910126-ASF", "revision-id": 1, "native-id": "R1_57318_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-03T18:19:12.288Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-10-28T03:25:41.000Z", "EndingDateTime": "2006-10-28T03:25:49.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 57318}], "GranuleUR": "R1_57318_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["5ee70d8b04de892eb4d03338562cc609"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["870.7373"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-10-28T03:25:49Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8824"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-26 13:36:33.001177"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3974"]}, {"Name": "DOPPLER", "Values": ["-4721.249"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5724"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2016"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3571"]}, {"Name": "BYTES", "Values": ["110463822"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.201614, "Latitude": 63.786846}, {"Longitude": -145.357113, "Latitude": 64.237514}, {"Longitude": -146.572383, "Latitude": 64.169582}, {"Longitude": -146.397447, "Latitude": 63.719318}, {"Longitude": -145.201614, "Latitude": 63.786846}]}}]}}}, "ProviderDates": [{"Date": "2010-12-26T13:36:33.000Z", "Type": "Insert"}, {"Date": "2010-12-26T13:36:33.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_57318_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_57318_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-26T13:36:33.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.34, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.201614, 63.786846], [-145.357113, 64.237514], [-146.572383, 64.169582], [-146.397447, 63.719318], [-145.201614, 63.786846]]], "type": "Polygon"}, "baseline": {"insarBaseline": 870.7373}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110872979, "centerLat": 63.9796, "centerLon": -145.8837, "faradayRotation": null, "fileID": "R1_57661_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "0e5bc71c1b5f3224bc2525b2a50761eb", "offNadirAngle": -1.0, "orbit": 57661, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T14:59:34.000Z", "processingLevel": "L0", "sceneName": "R1_57661_FN4_F160", "sensor": "SAR", "startTime": "2006-11-21T03:25:41.000Z", "stopTime": "2006-11-21T03:25:49.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_57661_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_57661_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2856, "perpendicularBaseline": 881}, "meta": {"concept-type": "granule", "concept-id": "G1207233881-ASF", "revision-id": 1, "native-id": "R1_57661_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T01:45:56.065Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2006-11-21T03:25:41.000Z", "EndingDateTime": "2006-11-21T03:25:49.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 57661}], "GranuleUR": "R1_57661_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["0e5bc71c1b5f3224bc2525b2a50761eb"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["880.7842"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2006-11-21T03:25:49Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8837"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 14:59:34.524122"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3988"]}, {"Name": "DOPPLER", "Values": ["-4721.303"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5737"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2029"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3583"]}, {"Name": "BYTES", "Values": ["110872979"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.2029, "Latitude": 63.786848}, {"Longitude": -145.358331, "Latitude": 64.237516}, {"Longitude": -146.573689, "Latitude": 64.169617}, {"Longitude": -146.398819, "Latitude": 63.719353}, {"Longitude": -145.2029, "Latitude": 63.786848}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T14:59:34.000Z", "Type": "Insert"}, {"Date": "2011-01-29T14:59:34.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_57661_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_57661_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T14:59:34.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.73, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.2029, 63.786848], [-145.358331, 64.237516], [-146.573689, 64.169617], [-146.398819, 63.719353], [-145.2029, 63.786848]]], "type": "Polygon"}, "baseline": {"insarBaseline": 880.7842}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110966619, "centerLat": 63.9796, "centerLon": -145.8913, "faradayRotation": null, "fileID": "R1_58347_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "42bcb880331a0f2afc43f0d69f1daf62", "offNadirAngle": -1.0, "orbit": 58347, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T07:56:58.000Z", "processingLevel": "L0", "sceneName": "R1_58347_FN4_F160", "sensor": "SAR", "startTime": "2007-01-08T03:25:37.000Z", "stopTime": "2007-01-08T03:25:44.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_58347_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_58347_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2904, "perpendicularBaseline": 658}, "meta": {"concept-type": "granule", "concept-id": "G1207751413-ASF", "revision-id": 1, "native-id": "R1_58347_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T15:45:27.356Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-01-08T03:25:37.000Z", "EndingDateTime": "2007-01-08T03:25:44.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 58347}], "GranuleUR": "R1_58347_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["42bcb880331a0f2afc43f0d69f1daf62"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["658.3589"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-01-08T03:25:44Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8913"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 07:56:58.889134"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4064"]}, {"Name": "DOPPLER", "Values": ["-4721.308"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5814"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2105"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.366"]}, {"Name": "BYTES", "Values": ["110966619"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.210456, "Latitude": 63.786844}, {"Longitude": -145.365951, "Latitude": 64.237511}, {"Longitude": -146.581385, "Latitude": 64.169574}, {"Longitude": -146.406449, "Latitude": 63.71931}, {"Longitude": -145.210456, "Latitude": 63.786844}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T07:56:58.000Z", "Type": "Insert"}, {"Date": "2011-01-29T07:56:58.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_58347_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_58347_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T07:56:58.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.82, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.210456, 63.786844], [-145.365951, 64.237511], [-146.581385, 64.169574], [-146.406449, 63.71931], [-145.210456, 63.786844]]], "type": "Polygon"}, "baseline": {"insarBaseline": 658.3589}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110949952, "centerLat": 63.9796, "centerLon": -145.8809, "faradayRotation": null, "fileID": "R1_58690_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "843234b616df31dc2d511e81e65e6cf5", "offNadirAngle": -1.0, "orbit": 58690, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-28T19:12:10.000Z", "processingLevel": "L0", "sceneName": "R1_58690_FN4_F160", "sensor": "SAR", "startTime": "2007-02-01T03:25:32.000Z", "stopTime": "2007-02-01T03:25:40.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_58690_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_58690_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2928, "perpendicularBaseline": 1185}, "meta": {"concept-type": "granule", "concept-id": "G1207576184-ASF", "revision-id": 1, "native-id": "R1_58690_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T10:43:51.088Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-02-01T03:25:32.000Z", "EndingDateTime": "2007-02-01T03:25:40.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 58690}], "GranuleUR": "R1_58690_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["843234b616df31dc2d511e81e65e6cf5"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1185.4882"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-02-01T03:25:40Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8809"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-28 19:12:10.541400"]}, {"Name": "NEAR_START_LON", "Values": ["-146.396"]}, {"Name": "DOPPLER", "Values": ["-4720.071"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.571"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1999"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3554"]}, {"Name": "BYTES", "Values": ["110949952"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.199918, "Latitude": 63.786879}, {"Longitude": -145.35544, "Latitude": 64.237549}, {"Longitude": -146.570966, "Latitude": 64.16959}, {"Longitude": -146.396003, "Latitude": 63.719325}, {"Longitude": -145.199918, "Latitude": 63.786879}]}}]}}}, "ProviderDates": [{"Date": "2010-12-28T19:12:10.000Z", "Type": "Insert"}, {"Date": "2010-12-28T19:12:10.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_58690_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_58690_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-28T19:12:10.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.81, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.199918, 63.786879], [-145.35544, 64.237549], [-146.570966, 64.16959], [-146.396003, 63.719325], [-145.199918, 63.786879]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1185.4882}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110661539, "centerLat": 63.9796, "centerLon": -145.8914, "faradayRotation": null, "fileID": "R1_59033_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "e0a19ed1cf60abab661aa9b249bf4274", "offNadirAngle": -1.0, "orbit": 59033, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-24T23:21:32.000Z", "processingLevel": "L0", "sceneName": "R1_59033_FN4_F160", "sensor": "SAR", "startTime": "2007-02-25T03:25:33.000Z", "stopTime": "2007-02-25T03:25:40.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_59033_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_59033_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2952, "perpendicularBaseline": 671}, "meta": {"concept-type": "granule", "concept-id": "G1207434268-ASF", "revision-id": 1, "native-id": "R1_59033_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T05:49:07.505Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-02-25T03:25:33.000Z", "EndingDateTime": "2007-02-25T03:25:40.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 59033}], "GranuleUR": "R1_59033_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["e0a19ed1cf60abab661aa9b249bf4274"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["671.1782"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-02-25T03:25:40Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8914"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-24 23:21:32.510376"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4065"]}, {"Name": "DOPPLER", "Values": ["-4721.054"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5815"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2105"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3661"]}, {"Name": "BYTES", "Values": ["110661539"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.21049, "Latitude": 63.786903}, {"Longitude": -145.366095, "Latitude": 64.237572}, {"Longitude": -146.581539, "Latitude": 64.169577}, {"Longitude": -146.406494, "Latitude": 63.719313}, {"Longitude": -145.21049, "Latitude": 63.786903}]}}]}}}, "ProviderDates": [{"Date": "2010-12-24T23:21:32.000Z", "Type": "Insert"}, {"Date": "2010-12-24T23:21:32.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_59033_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_59033_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-24T23:21:32.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.53, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.21049, 63.786903], [-145.366095, 64.237572], [-146.581539, 64.169577], [-146.406494, 63.719313], [-145.21049, 63.786903]]], "type": "Polygon"}, "baseline": {"insarBaseline": 671.1782}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110462031, "centerLat": 63.9796, "centerLon": -145.8883, "faradayRotation": null, "fileID": "R1_59376_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9c2e5b9af50b1af10d3d6a0abe44133d", "offNadirAngle": -1.0, "orbit": 59376, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-01T07:06:29.000Z", "processingLevel": "L0", "sceneName": "R1_59376_FN4_F160", "sensor": "SAR", "startTime": "2007-03-21T03:25:32.000Z", "stopTime": "2007-03-21T03:25:40.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_59376_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_59376_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 2976, "perpendicularBaseline": 789}, "meta": {"concept-type": "granule", "concept-id": "G1207778792-ASF", "revision-id": 1, "native-id": "R1_59376_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T16:47:32.808Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-03-21T03:25:32.000Z", "EndingDateTime": "2007-03-21T03:25:40.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 59376}], "GranuleUR": "R1_59376_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9c2e5b9af50b1af10d3d6a0abe44133d"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["788.6278"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-03-21T03:25:40Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8883"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-01 07:06:29.790920"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4034"]}, {"Name": "DOPPLER", "Values": ["-4720.18"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5784"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2074"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3629"]}, {"Name": "BYTES", "Values": ["110462031"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.207385, "Latitude": 63.786877}, {"Longitude": -145.362947, "Latitude": 64.237549}, {"Longitude": -146.578393, "Latitude": 64.169574}, {"Longitude": -146.403391, "Latitude": 63.719306}, {"Longitude": -145.207385, "Latitude": 63.786877}]}}]}}}, "ProviderDates": [{"Date": "2011-01-01T07:06:29.000Z", "Type": "Insert"}, {"Date": "2011-01-01T07:06:29.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_59376_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_59376_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-01T07:06:29.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.34, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.207385, 63.786877], [-145.362947, 64.237549], [-146.578393, 64.169574], [-146.403391, 63.719306], [-145.207385, 63.786877]]], "type": "Polygon"}, "baseline": {"insarBaseline": 788.6278}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 111101296, "centerLat": 63.9796, "centerLon": -145.876, "faradayRotation": null, "fileID": "R1_59719_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "d2519d8151e9c10041e37892d8e82ce9", "offNadirAngle": -1.0, "orbit": 59719, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-02-04T11:39:30.000Z", "processingLevel": "L0", "sceneName": "R1_59719_FN4_F160", "sensor": "SAR", "startTime": "2007-04-14T03:25:30.000Z", "stopTime": "2007-04-14T03:25:37.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_59719_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_59719_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3000, "perpendicularBaseline": 1363}, "meta": {"concept-type": "granule", "concept-id": "G1208014687-ASF", "revision-id": 1, "native-id": "R1_59719_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T21:39:40.510Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-04-14T03:25:30.000Z", "EndingDateTime": "2007-04-14T03:25:37.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 59719}], "GranuleUR": "R1_59719_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["d2519d8151e9c10041e37892d8e82ce9"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1362.6293"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-04-14T03:25:37Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.876"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-02-04 11:39:30.149078"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3911"]}, {"Name": "DOPPLER", "Values": ["-4719.556"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5661"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.195"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3506"]}, {"Name": "BYTES", "Values": ["111101296"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.195027, "Latitude": 63.786871}, {"Longitude": -145.350579, "Latitude": 64.237546}, {"Longitude": -146.5661, "Latitude": 64.169571}, {"Longitude": -146.391107, "Latitude": 63.719301}, {"Longitude": -145.195027, "Latitude": 63.786871}]}}]}}}, "ProviderDates": [{"Date": "2011-02-04T11:39:30.000Z", "Type": "Insert"}, {"Date": "2011-02-04T11:39:30.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_59719_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_59719_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-02-04T11:39:30.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.95, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.195027, 63.786871], [-145.350579, 64.237546], [-146.5661, 64.169571], [-146.391107, 63.719301], [-145.195027, 63.786871]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1362.6293}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110222161, "centerLat": 63.9796, "centerLon": -145.8892, "faradayRotation": null, "fileID": "R1_60062_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "ef5c2a30508b3be61031a57ffe16d191", "offNadirAngle": -1.0, "orbit": 60062, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-29T15:23:29.000Z", "processingLevel": "L0", "sceneName": "R1_60062_FN4_F160", "sensor": "SAR", "startTime": "2007-05-08T03:25:34.000Z", "stopTime": "2007-05-08T03:25:42.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_60062_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_60062_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3024, "perpendicularBaseline": 660}, "meta": {"concept-type": "granule", "concept-id": "G1207758923-ASF", "revision-id": 1, "native-id": "R1_60062_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T16:05:01.511Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-05-08T03:25:34.000Z", "EndingDateTime": "2007-05-08T03:25:42.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 60062}], "GranuleUR": "R1_60062_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["ef5c2a30508b3be61031a57ffe16d191"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["660.144"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-05-08T03:25:42Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8892"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-29 15:23:29.100942"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4043"]}, {"Name": "DOPPLER", "Values": ["-4720.193"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5792"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2084"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3638"]}, {"Name": "BYTES", "Values": ["110222161"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.20836, "Latitude": 63.786855}, {"Longitude": -145.363829, "Latitude": 64.237534}, {"Longitude": -146.579199, "Latitude": 64.169612}, {"Longitude": -146.404291, "Latitude": 63.719336}, {"Longitude": -145.20836, "Latitude": 63.786855}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T15:23:29.000Z", "Type": "Insert"}, {"Date": "2011-01-29T15:23:29.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_60062_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_60062_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-29T15:23:29.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.11, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.20836, 63.786855], [-145.363829, 64.237534], [-146.579199, 64.169612], [-146.404291, 63.719336], [-145.20836, 63.786855]]], "type": "Polygon"}, "baseline": {"insarBaseline": 660.144}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110713379, "centerLat": 63.9796, "centerLon": -145.8741, "faradayRotation": null, "fileID": "R1_60405_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9895cfae08066900ac7550ac38d5dee2", "offNadirAngle": -1.0, "orbit": 60405, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-15T13:06:28.000Z", "processingLevel": "L0", "sceneName": "R1_60405_FN4_F160", "sensor": "SAR", "startTime": "2007-06-01T03:25:30.000Z", "stopTime": "2007-06-01T03:25:38.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_60405_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_60405_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3048, "perpendicularBaseline": 1408}, "meta": {"concept-type": "granule", "concept-id": "G1207432804-ASF", "revision-id": 1, "native-id": "R1_60405_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T05:47:35.455Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-06-01T03:25:30.000Z", "EndingDateTime": "2007-06-01T03:25:38.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 60405}], "GranuleUR": "R1_60405_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9895cfae08066900ac7550ac38d5dee2"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1408.2404"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-06-01T03:25:38Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8741"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-15 13:06:28.818991"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3893"]}, {"Name": "DOPPLER", "Values": ["-4719.62"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5642"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.1933"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3487"]}, {"Name": "BYTES", "Values": ["110713379"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.193252, "Latitude": 63.78682}, {"Longitude": -145.348661, "Latitude": 64.237504}, {"Longitude": -146.564173, "Latitude": 64.169605}, {"Longitude": -146.389323, "Latitude": 63.719324}, {"Longitude": -145.193252, "Latitude": 63.78682}]}}]}}}, "ProviderDates": [{"Date": "2011-01-15T13:06:28.000Z", "Type": "Insert"}, {"Date": "2011-01-15T13:06:28.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_60405_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_60405_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-15T13:06:28.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.58, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.193252, 63.78682], [-145.348661, 64.237504], [-146.564173, 64.169605], [-146.389323, 63.719324], [-145.193252, 63.78682]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1408.2404}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110935284, "centerLat": 63.9796, "centerLon": -145.8888, "faradayRotation": null, "fileID": "R1_60748_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "fd57f87c6f5369b5e2d0bd1061c01610", "offNadirAngle": -1.0, "orbit": 60748, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-25T07:00:36.000Z", "processingLevel": "L0", "sceneName": "R1_60748_FN4_F160", "sensor": "SAR", "startTime": "2007-06-25T03:25:33.000Z", "stopTime": "2007-06-25T03:25:40.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_60748_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_60748_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3072, "perpendicularBaseline": 707}, "meta": {"concept-type": "granule", "concept-id": "G1207722776-ASF", "revision-id": 1, "native-id": "R1_60748_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T14:39:29.889Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-06-25T03:25:33.000Z", "EndingDateTime": "2007-06-25T03:25:40.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 60748}], "GranuleUR": "R1_60748_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["fd57f87c6f5369b5e2d0bd1061c01610"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["707.3324"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-06-25T03:25:40Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8888"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7194"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-25 07:00:36.447191"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4039"]}, {"Name": "DOPPLER", "Values": ["-4720.049"]}, {"Name": "FAR_START_LAT", "Values": ["63.7868"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5788"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.208"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3634"]}, {"Name": "BYTES", "Values": ["110935284"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.207963, "Latitude": 63.786835}, {"Longitude": -145.363367, "Latitude": 64.237519}, {"Longitude": -146.578767, "Latitude": 64.169631}, {"Longitude": -146.403922, "Latitude": 63.71935}, {"Longitude": -145.207963, "Latitude": 63.786835}]}}]}}}, "ProviderDates": [{"Date": "2010-12-25T07:00:36.000Z", "Type": "Insert"}, {"Date": "2010-12-25T07:00:36.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_60748_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_60748_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-25T07:00:36.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.79, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.207963, 63.786835], [-145.363367, 64.237519], [-146.578767, 64.169631], [-146.403922, 63.71935], [-145.207963, 63.786835]]], "type": "Polygon"}, "baseline": {"insarBaseline": 707.3324}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110804584, "centerLat": 63.9796, "centerLon": -145.879, "faradayRotation": null, "fileID": "R1_61091_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "680a3d13d014944255461c1d4180498e", "offNadirAngle": -1.0, "orbit": 61091, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-10T06:02:38.000Z", "processingLevel": "L0", "sceneName": "R1_61091_FN4_F160", "sensor": "SAR", "startTime": "2007-07-19T03:25:28.000Z", "stopTime": "2007-07-19T03:25:36.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_61091_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_61091_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3096, "perpendicularBaseline": 1275}, "meta": {"concept-type": "granule", "concept-id": "G1207228912-ASF", "revision-id": 1, "native-id": "R1_61091_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T01:40:40.315Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-07-19T03:25:28.000Z", "EndingDateTime": "2007-07-19T03:25:36.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 61091}], "GranuleUR": "R1_61091_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["680a3d13d014944255461c1d4180498e"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1275.2589"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-07-19T03:25:36Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.879"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-10 06:02:38.924258"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3942"]}, {"Name": "DOPPLER", "Values": ["-4718.909"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5691"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.198"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3535"]}, {"Name": "BYTES", "Values": ["110804584"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.198046, "Latitude": 63.786853}, {"Longitude": -145.353519, "Latitude": 64.237509}, {"Longitude": -146.569071, "Latitude": 64.169569}, {"Longitude": -146.394157, "Latitude": 63.719316}, {"Longitude": -145.198046, "Latitude": 63.786853}]}}]}}}, "ProviderDates": [{"Date": "2011-01-10T06:02:38.000Z", "Type": "Insert"}, {"Date": "2011-01-10T06:02:38.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_61091_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_61091_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-10T06:02:38.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.67, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.198046, 63.786853], [-145.353519, 64.237509], [-146.569071, 64.169569], [-146.394157, 63.719316], [-145.198046, 63.786853]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1275.2589}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110866241, "centerLat": 63.9796, "centerLon": -145.8874, "faradayRotation": null, "fileID": "R1_61434_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "1d44798802d6fa276f792f3750bd8984", "offNadirAngle": -1.0, "orbit": 61434, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-01-11T00:42:54.000Z", "processingLevel": "L0", "sceneName": "R1_61434_FN4_F160", "sensor": "SAR", "startTime": "2007-08-12T03:25:30.000Z", "stopTime": "2007-08-12T03:25:37.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_61434_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_61434_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3120, "perpendicularBaseline": 878}, "meta": {"concept-type": "granule", "concept-id": "G1207772772-ASF", "revision-id": 1, "native-id": "R1_61434_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T16:35:42.882Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-08-12T03:25:30.000Z", "EndingDateTime": "2007-08-12T03:25:37.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 61434}], "GranuleUR": "R1_61434_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["1d44798802d6fa276f792f3750bd8984"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["878.2044"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-08-12T03:25:37Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8874"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-01-11 00:42:54.886598"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4026"]}, {"Name": "DOPPLER", "Values": ["-4719.443"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5775"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2065"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.362"]}, {"Name": "BYTES", "Values": ["110866241"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.206528, "Latitude": 63.786863}, {"Longitude": -145.362029, "Latitude": 64.237521}, {"Longitude": -146.57752, "Latitude": 64.169571}, {"Longitude": -146.40258, "Latitude": 63.719318}, {"Longitude": -145.206528, "Latitude": 63.786863}]}}]}}}, "ProviderDates": [{"Date": "2011-01-11T00:42:54.000Z", "Type": "Insert"}, {"Date": "2011-01-11T00:42:54.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_61434_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_61434_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-01-11T00:42:54.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.73, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.206528, 63.786863], [-145.362029, 64.237521], [-146.57752, 64.169571], [-146.40258, 63.719318], [-145.206528, 63.786863]]], "type": "Polygon"}, "baseline": {"insarBaseline": 878.2044}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110724873, "centerLat": 63.9796, "centerLon": -145.893, "faradayRotation": null, "fileID": "R1_61777_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "9ee37f5ea76b018af541e17784533913", "offNadirAngle": -1.0, "orbit": 61777, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-24T21:56:37.000Z", "processingLevel": "L0", "sceneName": "R1_61777_FN4_F160", "sensor": "SAR", "startTime": "2007-09-05T03:25:30.000Z", "stopTime": "2007-09-05T03:25:37.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_61777_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_61777_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3144, "perpendicularBaseline": 748}, "meta": {"concept-type": "granule", "concept-id": "G1207968126-ASF", "revision-id": 1, "native-id": "R1_61777_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T20:23:47.222Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-09-05T03:25:30.000Z", "EndingDateTime": "2007-09-05T03:25:37.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 61777}], "GranuleUR": "R1_61777_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["9ee37f5ea76b018af541e17784533913"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["747.7362"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-09-05T03:25:37Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.893"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-24 21:56:37.639891"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4082"]}, {"Name": "DOPPLER", "Values": ["-4719.415"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5832"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.212"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3676"]}, {"Name": "BYTES", "Values": ["110724873"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.211996, "Latitude": 63.786926}, {"Longitude": -145.367641, "Latitude": 64.237568}, {"Longitude": -146.583244, "Latitude": 64.169537}, {"Longitude": -146.408159, "Latitude": 63.7193}, {"Longitude": -145.211996, "Latitude": 63.786926}]}}]}}}, "ProviderDates": [{"Date": "2010-12-24T21:56:37.000Z", "Type": "Insert"}, {"Date": "2010-12-24T21:56:37.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_61777_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_61777_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-24T21:56:37.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.59, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.211996, 63.786926], [-145.367641, 64.237568], [-146.583244, 64.169537], [-146.408159, 63.7193], [-145.211996, 63.786926]]], "type": "Polygon"}, "baseline": {"insarBaseline": 747.7362}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110365742, "centerLat": 63.9796, "centerLon": -145.8907, "faradayRotation": null, "fileID": "R1_62120_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "2437af8ea1d8de90902c2da5861ea8e1", "offNadirAngle": -1.0, "orbit": 62120, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-25T08:31:43.000Z", "processingLevel": "L0", "sceneName": "R1_62120_FN4_F160", "sensor": "SAR", "startTime": "2007-09-29T03:25:30.000Z", "stopTime": "2007-09-29T03:25:38.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_62120_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_62120_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3168, "perpendicularBaseline": 757}, "meta": {"concept-type": "granule", "concept-id": "G1208302230-ASF", "revision-id": 1, "native-id": "R1_62120_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T04:59:35.865Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-09-29T03:25:30.000Z", "EndingDateTime": "2007-09-29T03:25:38.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 62120}], "GranuleUR": "R1_62120_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["2437af8ea1d8de90902c2da5861ea8e1"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["756.9682"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-09-29T03:25:38Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8907"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-25 08:31:43.978494"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4058"]}, {"Name": "DOPPLER", "Values": ["-4719.648"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5808"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2097"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3653"]}, {"Name": "BYTES", "Values": ["110365742"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.209707, "Latitude": 63.786899}, {"Longitude": -145.365308, "Latitude": 64.237545}, {"Longitude": -146.580822, "Latitude": 64.169541}, {"Longitude": -146.405781, "Latitude": 63.7193}, {"Longitude": -145.209707, "Latitude": 63.786899}]}}]}}}, "ProviderDates": [{"Date": "2010-12-25T08:31:43.000Z", "Type": "Insert"}, {"Date": "2010-12-25T08:31:43.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_62120_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_62120_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-25T08:31:43.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.25, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.209707, 63.786899], [-145.365308, 64.237545], [-146.580822, 64.169541], [-146.405781, 63.7193], [-145.209707, 63.786899]]], "type": "Polygon"}, "baseline": {"insarBaseline": 756.9682}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110863303, "centerLat": 63.9796, "centerLon": -145.8956, "faradayRotation": null, "fileID": "R1_62463_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "f122a52f7de21ee94f4e5d726354a869", "offNadirAngle": -1.0, "orbit": 62463, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-02-03T14:19:18.000Z", "processingLevel": "L0", "sceneName": "R1_62463_FN4_F160", "sensor": "SAR", "startTime": "2007-10-23T03:25:31.000Z", "stopTime": "2007-10-23T03:25:39.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_62463_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_62463_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3192, "perpendicularBaseline": 639}, "meta": {"concept-type": "granule", "concept-id": "G1208342037-ASF", "revision-id": 1, "native-id": "R1_62463_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T06:22:43.823Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-10-23T03:25:31.000Z", "EndingDateTime": "2007-10-23T03:25:39.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 62463}], "GranuleUR": "R1_62463_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["f122a52f7de21ee94f4e5d726354a869"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["638.7749"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-10-23T03:25:39Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8956"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-02-03 14:19:18.637339"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4107"]}, {"Name": "DOPPLER", "Values": ["-4719.322"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5858"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2145"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3702"]}, {"Name": "BYTES", "Values": ["110863303"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.214549, "Latitude": 63.786902}, {"Longitude": -145.370183, "Latitude": 64.237565}, {"Longitude": -146.585805, "Latitude": 64.169541}, {"Longitude": -146.410729, "Latitude": 63.719283}, {"Longitude": -145.214549, "Latitude": 63.786902}]}}]}}}, "ProviderDates": [{"Date": "2011-02-03T14:19:18.000Z", "Type": "Insert"}, {"Date": "2011-02-03T14:19:18.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_62463_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_62463_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-02-03T14:19:18.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.72, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.214549, 63.786902], [-145.370183, 64.237565], [-146.585805, 64.169541], [-146.410729, 63.719283], [-145.214549, 63.786902]]], "type": "Polygon"}, "baseline": {"insarBaseline": 638.7749}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110711914, "centerLat": 63.9796, "centerLon": -145.8843, "faradayRotation": null, "fileID": "R1_62806_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "86381bfa00d340ef68d5ea453737f2c1", "offNadirAngle": -1.0, "orbit": 62806, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-12-17T02:47:28.000Z", "processingLevel": "L0", "sceneName": "R1_62806_FN4_F160", "sensor": "SAR", "startTime": "2007-11-16T03:25:28.000Z", "stopTime": "2007-11-16T03:25:35.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_62806_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_62806_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3216, "perpendicularBaseline": 1121}, "meta": {"concept-type": "granule", "concept-id": "G1208323944-ASF", "revision-id": 1, "native-id": "R1_62806_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T05:44:22.326Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-11-16T03:25:28.000Z", "EndingDateTime": "2007-11-16T03:25:35.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 62806}], "GranuleUR": "R1_62806_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["86381bfa00d340ef68d5ea453737f2c1"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1121.0187"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-11-16T03:25:35Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8843"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-12-17 02:47:28.749925"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3995"]}, {"Name": "DOPPLER", "Values": ["-4719.458"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5746"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2033"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3589"]}, {"Name": "BYTES", "Values": ["110711914"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.20329, "Latitude": 63.786932}, {"Longitude": -145.358923, "Latitude": 64.237575}, {"Longitude": -146.574559, "Latitude": 64.169548}, {"Longitude": -146.399485, "Latitude": 63.719311}, {"Longitude": -145.20329, "Latitude": 63.786932}]}}]}}}, "ProviderDates": [{"Date": "2010-12-25T03:40:27.000Z", "Type": "Insert"}, {"Date": "2011-12-17T02:47:28.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_62806_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_62806_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-12-17T02:47:28.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.58, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.20329, 63.786932], [-145.358923, 64.237575], [-146.574559, 64.169548], [-146.399485, 63.719311], [-145.20329, 63.786932]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1121.0187}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110285234, "centerLat": 63.9796, "centerLon": -145.8904, "faradayRotation": null, "fileID": "R1_63149_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "b4f0851fd4fb911076998e8204289c0d", "offNadirAngle": -1.0, "orbit": 63149, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-11-08T01:21:10.000Z", "processingLevel": "L0", "sceneName": "R1_63149_FN4_F160", "sensor": "SAR", "startTime": "2007-12-10T03:25:28.000Z", "stopTime": "2007-12-10T03:25:36.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_63149_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_63149_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3240, "perpendicularBaseline": 961}, "meta": {"concept-type": "granule", "concept-id": "G1207499786-ASF", "revision-id": 1, "native-id": "R1_63149_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T08:02:33.015Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2007-12-10T03:25:28.000Z", "EndingDateTime": "2007-12-10T03:25:36.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 63149}], "GranuleUR": "R1_63149_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["b4f0851fd4fb911076998e8204289c0d"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["960.8129"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2007-12-10T03:25:36Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8904"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-11-08 01:21:10.849589"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4056"]}, {"Name": "DOPPLER", "Values": ["-4719.397"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5806"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2093"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3649"]}, {"Name": "BYTES", "Values": ["110285234"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.20927, "Latitude": 63.78689}, {"Longitude": -145.364861, "Latitude": 64.237574}, {"Longitude": -146.580608, "Latitude": 64.169571}, {"Longitude": -146.405571, "Latitude": 63.719293}, {"Longitude": -145.20927, "Latitude": 63.78689}]}}]}}}, "ProviderDates": [{"Date": "2011-11-08T01:21:10.000Z", "Type": "Insert"}, {"Date": "2011-11-08T01:21:10.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_63149_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_63149_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-11-08T01:21:10.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.17, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.20927, 63.78689], [-145.364861, 64.237574], [-146.580608, 64.169571], [-146.405571, 63.719293], [-145.20927, 63.78689]]], "type": "Polygon"}, "baseline": {"insarBaseline": 960.8129}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110573910, "centerLat": 63.9796, "centerLon": -145.8943, "faradayRotation": null, "fileID": "R1_63492_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "0f2e13e7b2441d8ca0d4d84e5941046b", "offNadirAngle": -1.0, "orbit": 63492, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-29T03:05:09.000Z", "processingLevel": "L0", "sceneName": "R1_63492_FN4_F160", "sensor": "SAR", "startTime": "2008-01-03T03:25:26.000Z", "stopTime": "2008-01-03T03:25:34.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_63492_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_63492_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3264, "perpendicularBaseline": 802}, "meta": {"concept-type": "granule", "concept-id": "G1207486992-ASF", "revision-id": 1, "native-id": "R1_63492_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T07:33:04.827Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2008-01-03T03:25:26.000Z", "EndingDateTime": "2008-01-03T03:25:34.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 63492}], "GranuleUR": "R1_63492_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["0f2e13e7b2441d8ca0d4d84e5941046b"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["801.6647"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2008-01-03T03:25:34Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8943"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-29 03:05:09.467478"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4095"]}, {"Name": "DOPPLER", "Values": ["-4719.38"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5846"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2132"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3689"]}, {"Name": "BYTES", "Values": ["110573910"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.213232, "Latitude": 63.786879}, {"Longitude": -145.368876, "Latitude": 64.237563}, {"Longitude": -146.584612, "Latitude": 64.169532}, {"Longitude": -146.409523, "Latitude": 63.719253}, {"Longitude": -145.213232, "Latitude": 63.786879}]}}]}}}, "ProviderDates": [{"Date": "2010-12-29T03:05:09.000Z", "Type": "Insert"}, {"Date": "2010-12-29T03:05:09.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_63492_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_63492_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-29T03:05:09.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.45, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.213232, 63.786879], [-145.368876, 64.237563], [-146.584612, 64.169532], [-146.409523, 63.719253], [-145.213232, 63.786879]]], "type": "Polygon"}, "baseline": {"insarBaseline": 801.6647}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110832275, "centerLat": 63.9796, "centerLon": -145.8846, "faradayRotation": null, "fileID": "R1_63835_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "ab9dc49277e587dd26eaabb3ccbf8584", "offNadirAngle": -1.0, "orbit": 63835, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-27T23:29:08.000Z", "processingLevel": "L0", "sceneName": "R1_63835_FN4_F160", "sensor": "SAR", "startTime": "2008-01-27T03:25:21.000Z", "stopTime": "2008-01-27T03:25:29.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_63835_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_63835_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3288, "perpendicularBaseline": 1368}, "meta": {"concept-type": "granule", "concept-id": "G1207472393-ASF", "revision-id": 1, "native-id": "R1_63835_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T06:59:50.770Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2008-01-27T03:25:21.000Z", "EndingDateTime": "2008-01-27T03:25:29.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 63835}], "GranuleUR": "R1_63835_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["ab9dc49277e587dd26eaabb3ccbf8584"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["1368.492"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2008-01-27T03:25:29Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8846"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-27 23:29:08.149485"]}, {"Name": "NEAR_START_LON", "Values": ["-146.3998"]}, {"Name": "DOPPLER", "Values": ["-4718.113"]}, {"Name": "FAR_START_LAT", "Values": ["63.787"]}, {"Name": "NEAR_END_LON", "Values": ["-146.575"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2034"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3591"]}, {"Name": "BYTES", "Values": ["110832275"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.203353, "Latitude": 63.78695}, {"Longitude": -145.359073, "Latitude": 64.237588}, {"Longitude": -146.574968, "Latitude": 64.1695}, {"Longitude": -146.399802, "Latitude": 63.719268}, {"Longitude": -145.203353, "Latitude": 63.78695}]}}]}}}, "ProviderDates": [{"Date": "2010-12-27T23:29:08.000Z", "Type": "Insert"}, {"Date": "2010-12-27T23:29:08.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_63835_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_63835_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-27T23:29:08.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.69, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.203353, 63.78695], [-145.359073, 64.237588], [-146.574968, 64.1695], [-146.399802, 63.719268], [-145.203353, 63.78695]]], "type": "Polygon"}, "baseline": {"insarBaseline": 1368.492}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110939272, "centerLat": 63.9796, "centerLon": -145.8997, "faradayRotation": null, "fileID": "R1_64178_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "30ade35b5056a96f0ac7b45199010c51", "offNadirAngle": -1.0, "orbit": 64178, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-02-03T01:05:59.000Z", "processingLevel": "L0", "sceneName": "R1_64178_FN4_F160", "sensor": "SAR", "startTime": "2008-02-20T03:25:25.000Z", "stopTime": "2008-02-20T03:25:33.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_64178_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_64178_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3312, "perpendicularBaseline": 564}, "meta": {"concept-type": "granule", "concept-id": "G1208334930-ASF", "revision-id": 1, "native-id": "R1_64178_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-05T06:06:08.994Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2008-02-20T03:25:25.000Z", "EndingDateTime": "2008-02-20T03:25:33.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 64178}], "GranuleUR": "R1_64178_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["30ade35b5056a96f0ac7b45199010c51"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["563.9218"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2008-02-20T03:25:33Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8997"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-02-03 01:05:59.378300"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4149"]}, {"Name": "DOPPLER", "Values": ["-4719.796"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.59"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2186"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3743"]}, {"Name": "BYTES", "Values": ["110939272"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.218613, "Latitude": 63.786907}, {"Longitude": -145.374269, "Latitude": 64.23755}, {"Longitude": -146.589973, "Latitude": 64.169507}, {"Longitude": -146.414875, "Latitude": 63.71927}, {"Longitude": -145.218613, "Latitude": 63.786907}]}}]}}}, "ProviderDates": [{"Date": "2011-02-03T01:05:59.000Z", "Type": "Insert"}, {"Date": "2011-02-03T01:05:59.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_64178_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_64178_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-02-03T01:05:59.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.79, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.218613, 63.786907], [-145.374269, 64.23755], [-146.589973, 64.169507], [-146.414875, 63.71927], [-145.218613, 63.786907]]], "type": "Polygon"}, "baseline": {"insarBaseline": 563.9218}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110184904, "centerLat": 63.9796, "centerLon": -145.8938, "faradayRotation": null, "fileID": "R1_64521_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "058a6c7c365ccdba21a95b50534ebd1c", "offNadirAngle": -1.0, "orbit": 64521, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2011-08-02T01:41:32.000Z", "processingLevel": "L0", "sceneName": "R1_64521_FN4_F160", "sensor": "SAR", "startTime": "2008-03-15T03:25:24.000Z", "stopTime": "2008-03-15T03:25:32.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_64521_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_64521_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3336, "perpendicularBaseline": 824}, "meta": {"concept-type": "granule", "concept-id": "G1207613203-ASF", "revision-id": 1, "native-id": "R1_64521_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T12:05:21.537Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2008-03-15T03:25:24.000Z", "EndingDateTime": "2008-03-15T03:25:32.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 64521}], "GranuleUR": "R1_64521_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["058a6c7c365ccdba21a95b50534ebd1c"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["823.919"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2008-03-15T03:25:32Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8938"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2011-08-02 01:41:32.923532"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4089"]}, {"Name": "DOPPLER", "Values": ["-4718.809"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5841"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2126"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3684"]}, {"Name": "BYTES", "Values": ["110184904"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.212635, "Latitude": 63.78694}, {"Longitude": -145.368361, "Latitude": 64.237581}, {"Longitude": -146.584084, "Latitude": 64.169498}, {"Longitude": -146.408916, "Latitude": 63.719263}, {"Longitude": -145.212635, "Latitude": 63.78694}]}}]}}}, "ProviderDates": [{"Date": "2011-01-29T11:56:29.000Z", "Type": "Insert"}, {"Date": "2011-08-02T01:41:32.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_64521_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_64521_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2011-08-02T01:41:32.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.08, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.212635, 63.78694], [-145.368361, 64.237581], [-146.584084, 64.169498], [-146.408916, 63.719263], [-145.212635, 63.78694]]], "type": "Polygon"}, "baseline": {"insarBaseline": 823.919}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 109935706, "centerLat": 63.9796, "centerLon": -145.8952, "faradayRotation": null, "fileID": "R1_64864_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "993f5445027cf147dfe8232a7162716c", "offNadirAngle": -1.0, "orbit": 64864, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-22T15:28:35.000Z", "processingLevel": "L0", "sceneName": "R1_64864_FN4_F160", "sensor": "SAR", "startTime": "2008-04-08T03:25:26.000Z", "stopTime": "2008-04-08T03:25:34.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_64864_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_64864_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3360, "perpendicularBaseline": 683}, "meta": {"concept-type": "granule", "concept-id": "G1207283642-ASF", "revision-id": 1, "native-id": "R1_64864_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T02:43:35.069Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2008-04-08T03:25:26.000Z", "EndingDateTime": "2008-04-08T03:25:34.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 64864}], "GranuleUR": "R1_64864_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["993f5445027cf147dfe8232a7162716c"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2376"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["682.7654"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2008-04-08T03:25:34Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8952"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-22 15:28:35.060375"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4104"]}, {"Name": "DOPPLER", "Values": ["-4719.397"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5854"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2141"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1695"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.3698"]}, {"Name": "BYTES", "Values": ["109935706"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.214146, "Latitude": 63.786927}, {"Longitude": -145.369784, "Latitude": 64.237574}, {"Longitude": -146.585443, "Latitude": 64.169544}, {"Longitude": -146.410363, "Latitude": 63.719302}, {"Longitude": -145.214146, "Latitude": 63.786927}]}}]}}}, "ProviderDates": [{"Date": "2010-12-22T15:28:35.000Z", "Type": "Insert"}, {"Date": "2010-12-22T15:28:35.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_64864_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_64864_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-22T15:28:35.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 104.84, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.214146, 63.786927], [-145.369784, 64.237574], [-146.585443, 64.169544], [-146.410363, 63.719302], [-145.214146, 63.786927]]], "type": "Polygon"}, "baseline": {"insarBaseline": 682.7654}}, {"properties": {"beamModeType": "FN4", "browse": null, "bytes": 110957968, "centerLat": 63.9796, "centerLon": -145.8895, "faradayRotation": null, "fileID": "R1_65207_FN4_F160-L0", "flightDirection": "ASCENDING", "groupID": null, "granuleType": "R1_FINE_FRAME", "insarStackId": "1920010", "md5sum": "f14a49860b0e4b6f8fe9df6cb280f251", "offNadirAngle": -1.0, "orbit": 65207, "pathNumber": 296, "platform": "RADARSAT-1", "pointingAngle": null, "polarization": "HH", "processingDate": "2010-12-28T04:04:01.000Z", "processingLevel": "L0", "sceneName": "R1_65207_FN4_F160", "sensor": "SAR", "startTime": "2008-05-02T03:25:27.000Z", "stopTime": "2008-05-02T03:25:34.000Z", "url": "https://datapool.asf.alaska.edu/L0/R1/R1_65207_FN4_L0_F160.zip", "pgeVersion": null, "fileName": "R1_65207_FN4_L0_F160.zip", "frameNumber": 1280, "temporalBaseline": 3384, "perpendicularBaseline": 904}, "meta": {"concept-type": "granule", "concept-id": "G1207549933-ASF", "revision-id": 1, "native-id": "R1_65207_FN4_F160-L0", "provider-id": "ASF", "format": "application/echo10+xml", "revision-date": "2015-11-04T09:50:26.286Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2008-05-02T03:25:27.000Z", "EndingDateTime": "2008-05-02T03:25:34.000Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 65207}], "GranuleUR": "R1_65207_FN4_F160-L0", "AdditionalAttributes": [{"Name": "FLIGHT_LINE", "Values": ["NULL"]}, {"Name": "OFF_NADIR_ANGLE", "Values": ["-1"]}, {"Name": "MD5SUM", "Values": ["f14a49860b0e4b6f8fe9df6cb280f251"]}, {"Name": "GRANULE_TYPE", "Values": ["R1_FINE_FRAME"]}, {"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "FAR_END_LAT", "Values": ["64.2375"]}, {"Name": "INSAR_STACK_SIZE", "Values": ["68"]}, {"Name": "BEAM_MODE_TYPE", "Values": ["FN4"]}, {"Name": "INSAR_BASELINE", "Values": ["904.4872"]}, {"Name": "CENTER_FRAME_ID", "Values": ["1280"]}, {"Name": "CENTER_ESA_FRAME", "Values": ["1280"]}, {"Name": "ACQUISITION_DATE", "Values": ["2008-05-02T03:25:34Z"]}, {"Name": "MISSION_NAME", "Values": ["NULL"]}, {"Name": "CENTER_LON", "Values": ["-145.8895"]}, {"Name": "NEAR_START_LAT", "Values": ["63.7193"]}, {"Name": "BEAM_MODE", "Values": ["Fine"]}, {"Name": "BEAM_MODE_DESC", "Values": ["Radarsat-1 Fine Resolution Beam 4 SAR"]}, {"Name": "PROCESSING_TYPE", "Values": ["L0"]}, {"Name": "PROCESSING_DESCRIPTION", "Values": ["Raw signal SAR data."]}, {"Name": "FRAME_NUMBER", "Values": ["160"]}, {"Name": "PROCESSING_LEVEL", "Values": ["L0"]}, {"Name": "PROCESSING_DATE", "Values": ["2010-12-28 04:04:01.598946"]}, {"Name": "NEAR_START_LON", "Values": ["-146.4047"]}, {"Name": "DOPPLER", "Values": ["-4706.396"]}, {"Name": "FAR_START_LAT", "Values": ["63.7869"]}, {"Name": "NEAR_END_LON", "Values": ["-146.5796"]}, {"Name": "PROCESSING_TYPE_DISPLAY", "Values": ["Level Zero"]}, {"Name": "POLARIZATION", "Values": ["HH"]}, {"Name": "FAR_START_LON", "Values": ["-145.2085"]}, {"Name": "THUMBNAIL_URL", "Values": ["none"]}, {"Name": "ASF_PLATFORM", "Values": ["RADARSAT-1"]}, {"Name": "INSAR_STACK_ID", "Values": ["1920010"]}, {"Name": "LOOK_DIRECTION", "Values": ["R"]}, {"Name": "PATH_NUMBER", "Values": ["296"]}, {"Name": "NEAR_END_LAT", "Values": ["64.1696"]}, {"Name": "FARADAY_ROTATION", "Values": ["NA"]}, {"Name": "FAR_END_LON", "Values": ["-145.364"]}, {"Name": "BYTES", "Values": ["110957968"]}, {"Name": "CENTER_LAT", "Values": ["63.9796"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Longitude": -145.208517, "Latitude": 63.786878}, {"Longitude": -145.36396, "Latitude": 64.237549}, {"Longitude": -146.579614, "Latitude": 64.169583}, {"Longitude": -146.404734, "Latitude": 63.719315}, {"Longitude": -145.208517, "Latitude": 63.786878}]}}]}}}, "ProviderDates": [{"Date": "2010-12-28T04:04:01.000Z", "Type": "Insert"}, {"Date": "2010-12-28T04:04:01.000Z", "Type": "Update"}], "CollectionReference": {"EntryTitle": "RADARSAT-1_LEVEL0"}, "RelatedUrls": [{"Format": "Not provided", "Type": "GET DATA", "URL": "https://datapool.asf.alaska.edu/L0/R1/R1_65207_FN4_L0_F160.zip"}], "DataGranule": {"DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "R1_65207_FN4_F160", "IdentifierType": "ProducerGranuleId"}], "ProductionDateTime": "2010-12-28T04:04:01.000Z", "ArchiveAndDistributionInformation": [{"Name": "Not provided", "Size": 105.81, "SizeUnit": "MB", "Format": "Not provided"}]}, "Platforms": [{"ShortName": "RADARSAT-1", "Instruments": [{"ShortName": "SAR", "ComposedOf": [{"ShortName": "FN4"}]}]}]}, "geometry": {"coordinates": [[[-145.208517, 63.786878], [-145.36396, 64.237549], [-146.579614, 64.169583], [-146.404734, 63.719315], [-145.208517, 63.786878]]], "type": "Polygon"}, "baseline": {"insarBaseline": 904.4872}}] \ No newline at end of file diff --git a/tests/yml_tests/test_baseline_search.yml b/tests/yml_tests/test_baseline_search.yml index 668b8e8b..4f902f92 100644 --- a/tests/yml_tests/test_baseline_search.yml +++ b/tests/yml_tests/test_baseline_search.yml @@ -23,6 +23,14 @@ tests: product: SLC_BURST.yml stack: SLC_BURST_stack.yml +- Test get test-temporal-baseline test-product-stack JERS Params: + product: JERS.yml + stack: JERS_stack.yml + +- Test get test-temporal-baseline test-product-stack RADARSAT Params: + product: RADARSAT.yml + stack: RADARSAT_stack.yml + - test-stack-id empty ID: stack_id: '' stack_reference: Alos_response.yml diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index 2e336bcd..71b9dc97 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -17,6 +17,15 @@ tests: - test-ASFSearch S1 Resp 1: response: S1_baseline_stack.yml +- test-ASFSearch ERS Resp 1: + response: Fairbanks_ers_stack.yml + +- test-ASFSearch JERS Resp 1: + response: JERS_stack.yml + +- test-ASFSearch RADARSAT Resp 1: + response: RADARSAT_stack.yml + - test-ASFSearch-search-valid Alos: parameters: *alos_parameters answer: Alos_response_maxResults3.yml From 281616f44bf35de7d351057cbd4ee2e44f11705f Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 08:37:09 -0900 Subject: [PATCH 26/95] grab first browse for ERS --- asf_search/Products/ERSProduct.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index e4c31a33..995585c0 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -6,7 +6,7 @@ class ERSProduct(ASFProduct): base_properties = { - 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, + 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')]), 0]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, From 82651e526fbad288c15fca8eb158b6b0fda84567 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 09:32:24 -0900 Subject: [PATCH 27/95] ers products use center_esa_frame --- asf_search/Products/ERSProduct.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 995585c0..8989b8f8 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -6,9 +6,9 @@ class ERSProduct(ASFProduct): base_properties = { - 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')]), 0]}, + 'browse': { 'path': ['RelatedUrls', ('Type', ('GET RELATED VISUALIZATION', 'URL'))]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, From 9469e5b2a48f60be08eeb1f0d7d125e05cfe0933 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 10:33:03 -0900 Subject: [PATCH 28/95] fixes typo in umm pathing --- asf_search/Products/ERSProduct.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 8989b8f8..1a25a6ed 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -6,9 +6,10 @@ class ERSProduct(ASFProduct): base_properties = { - 'browse': { 'path': ['RelatedUrls', ('Type', ('GET RELATED VISUALIZATION', 'URL'))]}, + 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, + 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, From d8d5462b293d6144c16fd9f28dab43935d2b4071 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 11:35:11 -0900 Subject: [PATCH 29/95] update yml test data, update geojson output test --- asf_search/Products/ALOSProduct.py | 1 - asf_search/Products/ERSProduct.py | 2 +- tests/Search/test_search.py | 8 ++++++-- tests/yml_tests/Resources/Fairbanks_L1.yml | 5 +---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 33f13269..d71f0775 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -8,7 +8,6 @@ class ALOSProduct(ASFProduct): 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 1a25a6ed..4f4c3601 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -6,7 +6,6 @@ class ERSProduct(ASFProduct): base_properties = { - 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, @@ -26,6 +25,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = self.get_baseline_calc_properties() self.properties['frameNumber'] = str(self.properties['frameNumber']) + self.properties['esaFrame'] = str(self.properties['esaFrame']) def get_baseline_calc_properties(self) -> dict: insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index e1e0be75..3a0bceb9 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -28,8 +28,12 @@ def run_test_ASFSearchResults(search_resp): assert(feature.geojson()['geometry'] == search_resp[idx]['geometry']) for key, item in feature.geojson()['properties'].items(): - if search_resp[idx]['properties'][key] is not None and item is not None: - assert(item == search_resp[idx]['properties'][key]) + if key == 'esaFrame': + assert search_resp[idx]['properties']['frameNumber'] == item + elif 'esaFrame' in feature.geojson()['properties'].keys() and key == 'frameNumber': + continue + elif search_resp[idx]['properties'][key] is not None and item is not None: + assert item == search_resp[idx]['properties'][key] def run_test_search(search_parameters, answer): with requests_mock.Mocker() as m: diff --git a/tests/yml_tests/Resources/Fairbanks_L1.yml b/tests/yml_tests/Resources/Fairbanks_L1.yml index 89783354..4df41e5e 100644 --- a/tests/yml_tests/Resources/Fairbanks_L1.yml +++ b/tests/yml_tests/Resources/Fairbanks_L1.yml @@ -3,10 +3,7 @@ "properties": { "beamModeType": "STD", - "browse": - [ - "https://datapool.asf.alaska.edu/BROWSE/E1/E1_19942_STD_F287.jpg", - ], + "browse": "https://datapool.asf.alaska.edu/BROWSE/E1/E1_19942_STD_F287.jpg", "bytes": 58750445, "centerLat": 64.9813, "centerLon": -147.7602, From 023b38d18dbbc3f9a7bbe9185dcbffe7da6f9b4c Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 12:05:13 -0900 Subject: [PATCH 30/95] removes ers test case due in test_search --- tests/yml_tests/test_search.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index 71b9dc97..977b9788 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -17,9 +17,6 @@ tests: - test-ASFSearch S1 Resp 1: response: S1_baseline_stack.yml -- test-ASFSearch ERS Resp 1: - response: Fairbanks_ers_stack.yml - - test-ASFSearch JERS Resp 1: response: JERS_stack.yml From 9626636fcfa1e10e3719ea94d3296f04f40fa45f Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 14:45:33 -0900 Subject: [PATCH 31/95] removes ummfields module --- asf_search/CMR/UMMFields.py | 116 ------------------------------------ asf_search/CMR/__init__.py | 1 - 2 files changed, 117 deletions(-) delete mode 100644 asf_search/CMR/UMMFields.py diff --git a/asf_search/CMR/UMMFields.py b/asf_search/CMR/UMMFields.py deleted file mode 100644 index 9d010145..00000000 --- a/asf_search/CMR/UMMFields.py +++ /dev/null @@ -1,116 +0,0 @@ -from asf_search.CMR.translate import get_state_vector - -# common UMM properties and their UMM paths - -umm_property_paths = { - 'beamModeType': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0], - 'browse': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])], - 'bytes': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], - 'centerLat': [ 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], - 'centerLon': [ 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0], - 'faradayRotation': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], - 'fileID': [ 'GranuleUR'], - 'flightDirection': [ 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0], - 'groupID': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0], - 'granuleType': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], - 'insarStackId': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0], - 'md5sum': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0], - 'offNadirAngle': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], - 'orbit': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], - 'pathNumber': [ 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0], - 'platform': [ 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0], - 'pointingAngle': [ 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0], - 'polarization': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0], - 'processingDate': [ 'DataGranule', 'ProductionDateTime'], - 'processingLevel': [ 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0], - 'sceneName': [ 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'], - 'sensor': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], - 'startTime': [ 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'], - 'stopTime': [ 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'], - 'url': [ 'RelatedUrls', ('Type', 'GET DATA'), 'URL'], - 'pgeVersion': ['PGEVersionClass', 'PGEVersion'], - 'frameNumber': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], - # 'frameNumber': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], - - # baseline (state vectors) - 'ascendingNodeTime': ['AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0], - 'sv_position_pre': ['AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0], - 'sv_position_post': ['AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0], - 'sv_velocity_pre': ['AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0], - 'sv_velocity_post': ['AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0], - - # baseline (precalc) - 'insarBaseline': ['AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0], - - # bursts - 'absoluteBurstID': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], - 'relativeBurstID': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], - 'fullBurstID': ['AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0], - 'burstIndex': ['AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0], - 'samplesPerBurst': ['AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0], - 'subswath': ['AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0], - 'azimuthTime': ['AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0], - 'azimuthAnxTime': ['AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0], - 'RelatedUrls': ['RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0], - 'byteLength': ['AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0], # alt for bytes - - # Platform/Product specific overrides - 'S1AlosFrameNumber': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) - - # Fallbacks - 'platformShortName': ['Platforms', 0, 'ShortName'], # fallback for 'platform' - 'beamMode': ['AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0] # fallback to 'beamModeType' - } - -def float_string_as_int(val): - int(float(val)) - -umm_property_typecasting = { - 'bytes': float_string_as_int, # casting the string literal of a floating point number raises a TypeError, parse as float first - 'centerLat': float, - 'centerLon': float, - 'faradayRotation': float, - 'offNadirAngle': float, - 'orbit': int, - 'pathNumber': int, - 'pointingAngle': float, - 'frameNumber': int, - 'sv_position_pre': get_state_vector, - 'sv_position_post': get_state_vector, - 'sv_velocity_pre': get_state_vector, - 'sv_velocity_post': get_state_vector, - 'absoluteBurstID': int, - 'relativeBurstID': int, - 'burstIndex': int, - 'samplesPerBurst': int, - 'byteLength': int -} - -# properties = { -# 'beamModeType': get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0), -# 'browse': get(umm, 'RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])), -# 'bytes': cast(int, try_round_float(get(umm, 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0))), -# 'centerLat': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0)), -# 'centerLon': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0)), -# 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), -# 'fileID': get(umm, 'GranuleUR'), -# 'flightDirection': get(umm, 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0), -# 'groupID': get(umm, 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0), -# 'granuleType': get(umm, 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0), -# 'insarStackId': get(umm, 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0), -# 'md5sum': get(umm, 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0), -# 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), -# 'orbit': cast(int, get(umm, 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber')), -# 'pathNumber': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0)), -# 'platform': get(umm, 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0), -# 'pointingAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0)), -# 'polarization': get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0), -# 'processingDate': get(umm, 'DataGranule', 'ProductionDateTime'), -# 'processingLevel': get(umm, 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0), -# 'sceneName': get(umm, 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'), -# 'sensor': get(umm, 'Platforms', 0, 'Instruments', 0, 'ShortName'), -# 'startTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'), -# 'stopTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'), -# 'url': get(umm, 'RelatedUrls', ('Type', 'GET DATA'), 'URL'), -# 'pgeVersion': get(umm, 'PGEVersionClass', 'PGEVersion') -# } \ No newline at end of file diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index 11ef6389..b632410d 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -2,5 +2,4 @@ from .subquery import build_subqueries from .translate import translate_opts, get_additional_fields from .field_map import field_map -from .UMMFields import umm_property_paths, umm_property_typecasting from .datasets import dataset_collections From 241cf8e46090d79efd14878d78a63bcfb18982f2 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 7 Dec 2023 16:18:28 -0900 Subject: [PATCH 32/95] adds validityStartDate support to opera s1 products --- asf_search/ASFProduct.py | 6 +++++- asf_search/Products/OPERAS1Product.py | 10 +++++++++- asf_search/search/search.py | 2 +- tests/yml_tests/Resources/OPERA_Products.yml | 1 + tests/yml_tests/test_search.yml | 3 +++ 5 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 tests/yml_tests/Resources/OPERA_Products.yml diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 4e8ae091..0495e420 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -204,4 +204,8 @@ def get_default_product_type(): return None def is_valid_reference(self): - return False \ No newline at end of file + return False + + def get_sort_keys(self): + return (self.properties.get('stopTime'), self.properties.get('fileID', 'sceneName')) + \ No newline at end of file diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 78db94a3..2ebedde6 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -49,4 +49,12 @@ def get_default_product_type(): return 'CSLC' def is_valid_reference(self): - return False \ No newline at end of file + return False + + def get_sort_keys(self): + keys = super().get_sort_keys() + + if keys[0] is None: + keys = self.properties.get('validityStartDate'), keys[1] + + return keys \ No newline at end of file diff --git a/asf_search/search/search.py b/asf_search/search/search.py index b1eaabe8..ca9956f9 100644 --- a/asf_search/search/search.py +++ b/asf_search/search/search.py @@ -97,6 +97,6 @@ def search( results.searchComplete = page.searchComplete results.searchOptions = page.searchOptions - results.sort(key=lambda p: (p.properties['stopTime'], p.properties['fileID']), reverse=True) + results.sort(key=lambda p: p.get_sort_keys(), reverse=True) return results diff --git a/tests/yml_tests/Resources/OPERA_Products.yml b/tests/yml_tests/Resources/OPERA_Products.yml new file mode 100644 index 00000000..108a0e2c --- /dev/null +++ b/tests/yml_tests/Resources/OPERA_Products.yml @@ -0,0 +1 @@ +[{"properties": {"stopTime": "2023-12-02T16:28:59Z", "fileID": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0", "flightDirection": "DESCENDING", "pathNumber": 131, "processingLevel": "RTC", "url": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "startTime": "2023-12-02T16:28:56Z", "sceneName": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0", "browse": ["https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png", "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png", "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png"], "platform": "Sentinel-1A", "bytes": {"OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5": {"bytes": 105653, "format": "HDF5"}, "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif": {"bytes": 6872077, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif": {"bytes": 6822497, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif": {"bytes": 52978, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml": {"bytes": 161580, "format": "XML"}}, "md5sum": null, "polarization": ["VV", "VH"], "granuleType": null, "groupID": "S1A_IWDV_0372_0379_051478_131", "orbit": 51478, "pgeVersion": "2.1.0", "processingDate": "2023-12-02T23:32:51Z", "sensor": "C-SAR", "operaBurstID": "T131_279916_IW1", "validityStartDate": null, "fileName": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "beamModeType": "IW", "beamMode": "IW", "additionalUrls": ["https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5", "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml", "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif", "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif"]}, "meta": {"concept-type": "granule", "concept-id": "G2810724460-ASF", "revision-id": 1, "native-id": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0", "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", "revision-date": "2023-12-03T00:11:28.576Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2023-12-02T16:28:56Z", "EndingDateTime": "2023-12-02T16:28:59Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 51478}], "GranuleUR": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0", "AdditionalAttributes": [{"Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"]}, {"Name": "BEAM_MODE", "Values": ["IW"]}, {"Name": "BISTATIC_DELAY_CORRECTION", "Values": ["TRUE"]}, {"Name": "GROUP_ID", "Values": ["S1A_IWDV_0372_0379_051478_131"]}, {"Name": "LOOK_DIRECTION", "Values": ["RIGHT"]}, {"Name": "NOISE_CORRECTION", "Values": ["TRUE"]}, {"Name": "OPERA_BURST_ID", "Values": ["T131_279916_IW1"]}, {"Name": "PATH_NUMBER", "Values": ["131"]}, {"Name": "POLARIZATION", "Values": ["VV", "VH"]}, {"Name": "POST_PROCESSING_FILTER", "Values": ["FALSE"]}, {"Name": "PROCESSING_TYPE", "Values": ["RTC"]}, {"Name": "PRODUCT_VERSION", "Values": ["1.0"]}, {"Name": "RADIOMETRIC_TERRAIN_CORRECTION", "Values": ["TRUE"]}, {"Name": "STATIC_TROPO_CORRECTION", "Values": ["TRUE"]}, {"Name": "SUBSWATH_NAME", "Values": ["IW1"]}, {"Name": "WET_TROPO_CORRECTION", "Values": ["FALSE"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Latitude": 64.92475, "Longitude": -147.09242}, {"Latitude": 65.10709, "Longitude": -148.94741}, {"Latitude": 64.94369, "Longitude": -149.02983}, {"Latitude": 64.76151, "Longitude": -147.18102}, {"Latitude": 64.92475, "Longitude": -147.09242}]}}]}}}, "ProviderDates": [{"Type": "Insert", "Date": "2023-12-03T00:11:26Z"}, {"Type": "Update", "Date": "2023-12-03T00:11:26Z"}], "CollectionReference": {"ShortName": "OPERA_L2_RTC-S1_V1", "Version": "1"}, "PGEVersionClass": {"PGEName": "RTC_S1_PGE", "PGEVersion": "2.1.0"}, "RelatedUrls": [{"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5", "Format": "HDF5"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5", "Format": "HDF5"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml", "Format": "XML"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml", "Format": "XML"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE.png.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_low-res.png.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0/OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_BROWSE_thumbnail.png.md5", "Format": "Text File"}, {"URL": "https://cumulus.asf.alaska.edu/s3credentials", "Type": "VIEW RELATED INFORMATION", "Description": "S3 Credentials Endpoint"}], "InputGranules": ["S1A_IW_SLC__1SDV_20231202T162835_20231202T162902_051478_063699_8552"], "Projects": [{"ShortName": "SNWG/OPERA"}], "DataGranule": {"ArchiveAndDistributionInformation": [{"Name": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.h5", "SizeInBytes": 105653, "Format": "HDF5", "Checksum": {"Value": "887a5a6135b2c453a8acec5fc60dd1d5", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VH.tif", "SizeInBytes": 6872077, "Format": "GeoTIFF", "Checksum": {"Value": "e9065264b4a15314b45a6c9721c8b074", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_VV.tif", "SizeInBytes": 6822497, "Format": "GeoTIFF", "Checksum": {"Value": "02c8980e21be53810524ca961404a20b", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0_mask.tif", "SizeInBytes": 52978, "Format": "GeoTIFF", "Checksum": {"Value": "aec40e988f655cf93b8e61c2093aac37", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0.iso.xml", "SizeInBytes": 161580, "Format": "XML", "Checksum": {"Value": "bc23165cf6c9d2bff7815ab541f5fb08", "Algorithm": "MD5"}}], "DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "OPERA_L2_RTC-S1_T131-279916-IW1_20231202T162856Z_20231202T232622Z_S1A_30_v1.0", "IdentifierType": "ProducerGranuleId"}, {"Identifier": "0.15.0", "IdentifierType": "Other", "IdentifierName": "ISCE3Version"}, {"Identifier": "0.2.2", "IdentifierType": "Other", "IdentifierName": "S1ReaderVersion"}, {"Identifier": "1.0.1", "IdentifierType": "Other", "IdentifierName": "SASVersionId"}], "ProductionDateTime": "2023-12-02T23:32:51Z"}, "Platforms": [{"ShortName": "Sentinel-1A", "Instruments": [{"ShortName": "C-SAR", "Characteristics": [{"Name": "LookDirection", "Value": "RIGHT"}], "OperationalModes": ["IW"]}]}], "MetadataSpecification": {"Name": "UMM-G", "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", "Version": "1.6.5"}}, "geometry": {"coordinates": [[[-147.09242, 64.92475], [-148.94741, 65.10709], [-149.02983, 64.94369], [-147.18102, 64.76151], [-147.09242, 64.92475]]], "type": "Polygon"}, "baseline": null}, {"properties": {"stopTime": "2014-10-28T16:11:46Z", "fileID": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0", "flightDirection": "DESCENDING", "pathNumber": 160, "processingLevel": "CSLC", "url": "https://datapool.asf.alaska.edu/CSLC/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "startTime": "2014-10-28T16:11:43Z", "sceneName": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0", "browse": ["https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png", "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png", "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png"], "platform": "Sentinel-1A", "bytes": {"OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5": {"bytes": 239658354, "format": "HDF5"}, "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml": {"bytes": 221737, "format": "XML"}}, "md5sum": null, "polarization": ["VV"], "granuleType": null, "groupID": "S1A_IWSV_0373_0379_003032_160", "orbit": 3032, "pgeVersion": "2.0.0", "processingDate": "2023-09-29T10:40:13Z", "sensor": "C-SAR", "operaBurstID": "T160_342208_IW3", "validityStartDate": null, "fileName": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "beamModeType": "IW", "beamMode": "IW", "additionalUrls": ["https://datapool.asf.alaska.edu/CSLC/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml"]}, "meta": {"concept-type": "granule", "concept-id": "G2808295590-ASF", "revision-id": 1, "native-id": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0", "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", "revision-date": "2023-11-29T03:08:31.145Z"}, "umm": {"TemporalExtent": {"RangeDateTime": {"BeginningDateTime": "2014-10-28T16:11:43Z", "EndingDateTime": "2014-10-28T16:11:46Z"}}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 3032}], "GranuleUR": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0", "AdditionalAttributes": [{"Name": "ASCENDING_DESCENDING", "Values": ["DESCENDING"]}, {"Name": "BEAM_MODE", "Values": ["IW"]}, {"Name": "GROUP_ID", "Values": ["S1A_IWSV_0373_0379_003032_160"]}, {"Name": "LOOK_DIRECTION", "Values": ["RIGHT"]}, {"Name": "OPERA_BURST_ID", "Values": ["T160_342208_IW3"]}, {"Name": "PATH_NUMBER", "Values": ["160"]}, {"Name": "POLARIZATION", "Values": ["VV"]}, {"Name": "PROCESSING_TYPE", "Values": ["CSLC"]}, {"Name": "PRODUCT_VERSION", "Values": ["1.0"]}, {"Name": "SUBSWATH_NAME", "Values": ["IW3"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Latitude": 64.80187, "Longitude": -146.7846}, {"Latitude": 64.92494, "Longitude": -148.45744}, {"Latitude": 64.76085, "Longitude": -148.51947}, {"Latitude": 64.63809, "Longitude": -146.85672}, {"Latitude": 64.80187, "Longitude": -146.7846}]}}]}}}, "ProviderDates": [{"Type": "Insert", "Date": "2023-11-29T03:08:28Z"}, {"Type": "Update", "Date": "2023-11-29T03:08:28Z"}], "CollectionReference": {"ShortName": "OPERA_L2_CSLC-S1_CALVAL_V1", "Version": "1"}, "PGEVersionClass": {"PGEName": "CSLC_S1_PGE", "PGEVersion": "2.0.0"}, "RelatedUrls": [{"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/CSLC/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "Type": "GET DATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "Format": "HDF5"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "Format": "HDF5"}, {"URL": "https://datapool.asf.alaska.edu/CSLC/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml", "Format": "XML"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml", "Format": "XML"}, {"URL": "https://datapool.asf.alaska.edu/CSLC/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/CSLC/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE.png.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_low-res.png.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_CSLC-S1_CALVAL/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0/OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0_BROWSE_thumbnail.png.md5", "Format": "Text File"}, {"URL": "https://cumulus.asf.alaska.edu/s3credentials", "Type": "VIEW RELATED INFORMATION", "Description": "S3 Credentials Endpoint"}], "InputGranules": ["S1A_IW_SLC__1SSV_20141028T161116_20141028T161146_003032_003762_49E4"], "Projects": [{"ShortName": "SNWG/OPERA"}], "DataGranule": {"ArchiveAndDistributionInformation": [{"Name": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.h5", "SizeInBytes": 239658354, "Format": "HDF5", "Checksum": {"Value": "6f3bd42f6248e33d2de4709ae21e0fbd", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0.iso.xml", "SizeInBytes": 221737, "Format": "XML", "Checksum": {"Value": "40da5634d0ea174a1de20496de75da0e", "Algorithm": "MD5"}}], "DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "OPERA_L2_CSLC-S1_T160-342208-IW3_20141028T161143Z_20230929T095254Z_S1A_VV_v1.0", "IdentifierType": "ProducerGranuleId"}, {"Identifier": "0.15.0", "IdentifierType": "Other", "IdentifierName": "ISCE3Version"}, {"Identifier": "0.2.3", "IdentifierType": "Other", "IdentifierName": "S1ReaderVersion"}, {"Identifier": "0.5.1", "IdentifierType": "Other", "IdentifierName": "SASVersionId"}], "ProductionDateTime": "2023-09-29T10:40:13Z"}, "Platforms": [{"ShortName": "Sentinel-1A", "Instruments": [{"ShortName": "C-SAR", "Characteristics": [{"Name": "LookDirection", "Value": "RIGHT"}], "OperationalModes": ["IW"]}]}], "MetadataSpecification": {"Name": "UMM-G", "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", "Version": "1.6.5"}}, "geometry": {"coordinates": [[[-146.7846, 64.80187], [-148.45744, 64.92494], [-148.51947, 64.76085], [-146.85672, 64.63809], [-146.7846, 64.80187]]], "type": "Polygon"}, "baseline": null}, {"properties": {"stopTime": null, "fileID": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0", "flightDirection": "ASCENDING", "pathNumber": 161, "processingLevel": "RTC-STATIC", "url": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "startTime": null, "sceneName": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0", "browse": ["https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png", "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png", "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png", "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png"], "platform": "Sentinel-1B", "bytes": {"OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif": {"bytes": 1271458, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif": {"bytes": 3761171, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif": {"bytes": 25094, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif": {"bytes": 7143791, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif": {"bytes": 5095021, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif": {"bytes": 3453087, "format": "GeoTIFF"}, "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml": {"bytes": 151808, "format": "XML"}}, "md5sum": null, "polarization": ["VV"], "granuleType": null, "groupID": "S1B_IWDV_0212_0217_005962_161", "orbit": 5962, "pgeVersion": "2.1.0", "processingDate": "2023-12-05T03:27:54Z", "sensor": "C-SAR", "operaBurstID": "T161_344054_IW2", "validityStartDate": "2014-04-03T00:00:00Z", "fileName": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "beamModeType": "IW", "beamMode": "IW", "additionalUrls": ["https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml", "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif", "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif", "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif", "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif", "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif"]}, "meta": {"concept-type": "granule", "concept-id": "G2811973222-ASF", "revision-id": 2, "native-id": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0", "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", "revision-date": "2023-12-05T03:53:51.687Z"}, "umm": {"TemporalExtent": {"SingleDateTime": "2014-04-03T00:00:00Z"}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 5962}], "GranuleUR": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0", "AdditionalAttributes": [{"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "BEAM_MODE", "Values": ["IW"]}, {"Name": "BISTATIC_DELAY_CORRECTION", "Values": ["FALSE"]}, {"Name": "GROUP_ID", "Values": ["S1B_IWDV_0212_0217_005962_161"]}, {"Name": "LOOK_DIRECTION", "Values": ["RIGHT"]}, {"Name": "OPERA_BURST_ID", "Values": ["T161_344054_IW2"]}, {"Name": "PATH_NUMBER", "Values": ["161"]}, {"Name": "POLARIZATION", "Values": ["VV"]}, {"Name": "PROCESSING_TYPE", "Values": ["RTC-STATIC"]}, {"Name": "PRODUCT_VERSION", "Values": ["1.0"]}, {"Name": "STATIC_TROPO_CORRECTION", "Values": ["FALSE"]}, {"Name": "SUBSWATH_NAME", "Values": ["IW2"]}, {"Name": "VALIDITY_START_DATE", "Values": ["2014-04-03"]}, {"Name": "WET_TROPO_CORRECTION", "Values": ["FALSE"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Latitude": 65.12691, "Longitude": 179.999}, {"Latitude": 65.12691, "Longitude": 0.16023}, {"Latitude": 64.69501, "Longitude": 0.16023}, {"Latitude": 64.69501, "Longitude": 179.999}, {"Latitude": 65.12691, "Longitude": 179.999}]}}, {"Boundary": {"Points": [{"Latitude": 64.69501, "Longitude": -179.999}, {"Latitude": 64.69501, "Longitude": -2.05561}, {"Latitude": 65.12691, "Longitude": -2.05561}, {"Latitude": 65.12691, "Longitude": -179.999}, {"Latitude": 64.69501, "Longitude": -179.999}]}}]}}}, "ProviderDates": [{"Type": "Insert", "Date": "2023-12-05T03:53:49Z"}, {"Type": "Update", "Date": "2023-12-05T03:53:49Z"}], "CollectionReference": {"ShortName": "OPERA_L2_RTC-S1-STATIC_V1", "Version": "1"}, "PGEVersionClass": {"PGEName": "RTC_S1_PGE", "PGEVersion": "2.1.0"}, "RelatedUrls": [{"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif", "Type": "GET DATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif", "Format": "GeoTIFF"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif", "Format": "GeoTIFF"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml", "Format": "XML"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml", "Format": "XML"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/RTC-STATIC/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE.png.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png", "Type": "GET RELATED VISUALIZATION", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png", "Format": "PNG"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png", "Type": "GET RELATED VISUALIZATION", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png", "Format": "PNG"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_low-res.png.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/BROWSE/OPERA-S1/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-browse/OPERA_L2_RTC-S1_STATIC/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0/OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_BROWSE_thumbnail.png.md5", "Format": "Text File"}, {"URL": "https://cumulus.asf.alaska.edu/s3credentials", "Type": "VIEW RELATED INFORMATION", "Description": "S3 Credentials Endpoint"}], "InputGranules": ["S1B_IW_SLC__1SDV_20170608T173602_20170608T173628_005962_00A75D_48DE"], "Projects": [{"ShortName": "SNWG/OPERA"}], "DataGranule": {"ArchiveAndDistributionInformation": [{"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_incidence_angle.tif", "SizeInBytes": 1271458, "Format": "GeoTIFF", "Checksum": {"Value": "ace99faace3ab859b97089574c29fd5a", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_local_incidence_angle.tif", "SizeInBytes": 3761171, "Format": "GeoTIFF", "Checksum": {"Value": "edaeb53be905830ce3f5b1ced7c15bfe", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_mask.tif", "SizeInBytes": 25094, "Format": "GeoTIFF", "Checksum": {"Value": "ad95c665373465cfdcc49ea9cdd45648", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_number_of_looks.tif", "SizeInBytes": 7143791, "Format": "GeoTIFF", "Checksum": {"Value": "0dc4a9d6b36a39790f64d7587286bdf5", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_beta0.tif", "SizeInBytes": 5095021, "Format": "GeoTIFF", "Checksum": {"Value": "b8d72d104498cc7c70e99f182a3ceeb4", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0_rtc_anf_gamma0_to_sigma0.tif", "SizeInBytes": 3453087, "Format": "GeoTIFF", "Checksum": {"Value": "84a66d5de49d49124b84afd70f42c0ce", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0.iso.xml", "SizeInBytes": 151808, "Format": "XML", "Checksum": {"Value": "1fe8f3f89ae2cfcced4c327a032e3a75", "Algorithm": "MD5"}}], "DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "OPERA_L2_RTC-S1-STATIC_T161-344054-IW2_20140403_S1B_30_v1.0", "IdentifierType": "ProducerGranuleId"}, {"Identifier": "0.15.0", "IdentifierType": "Other", "IdentifierName": "ISCE3Version"}, {"Identifier": "0.2.2", "IdentifierType": "Other", "IdentifierName": "S1ReaderVersion"}, {"Identifier": "1.0.1", "IdentifierType": "Other", "IdentifierName": "SASVersionId"}], "ProductionDateTime": "2023-12-05T03:27:54Z"}, "Platforms": [{"ShortName": "Sentinel-1B", "Instruments": [{"ShortName": "C-SAR", "Characteristics": [{"Name": "LookDirection", "Value": "RIGHT"}], "OperationalModes": ["IW"]}]}], "MetadataSpecification": {"Name": "UMM-G", "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", "Version": "1.6.5"}}, "geometry": {"coordinates": [[[179.999, 65.12691], [0.16023, 65.12691], [0.16023, 64.69501], [179.999, 64.69501], [179.999, 65.12691]]], "type": "Polygon"}, "baseline": null}, {"properties": {"stopTime": null, "fileID": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0", "flightDirection": "ASCENDING", "pathNumber": 94, "processingLevel": "CSLC-STATIC", "url": "https://datapool.asf.alaska.edu/CSLC-STATIC/OPERA-S1/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "startTime": null, "sceneName": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0", "browse": null, "platform": "Sentinel-1A", "bytes": {"OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5": {"bytes": 180307417, "format": "HDF5"}, "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml": {"bytes": 200080, "format": "XML"}}, "md5sum": null, "polarization": ["VV"], "granuleType": null, "groupID": "S1A_IWSV_0211_0216_011191_094", "orbit": 11191, "pgeVersion": "2.1.0", "processingDate": "2023-12-02T07:13:53Z", "sensor": "C-SAR", "operaBurstID": "T094_200143_IW2", "validityStartDate": "2014-04-03T00:00:00Z", "fileName": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "beamModeType": "IW", "beamMode": "IW", "additionalUrls": ["https://datapool.asf.alaska.edu/CSLC-STATIC/OPERA-S1/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml"]}, "meta": {"concept-type": "granule", "concept-id": "G2810331303-ASF", "revision-id": 1, "native-id": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0", "provider-id": "ASF", "format": "application/vnd.nasa.cmr.umm+json", "revision-date": "2023-12-02T08:24:39.581Z"}, "umm": {"TemporalExtent": {"SingleDateTime": "2014-04-03T00:00:00Z"}, "OrbitCalculatedSpatialDomains": [{"OrbitNumber": 11191}], "GranuleUR": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0", "AdditionalAttributes": [{"Name": "ASCENDING_DESCENDING", "Values": ["ASCENDING"]}, {"Name": "BEAM_MODE", "Values": ["IW"]}, {"Name": "GROUP_ID", "Values": ["S1A_IWSV_0211_0216_011191_094"]}, {"Name": "LOOK_DIRECTION", "Values": ["RIGHT"]}, {"Name": "OPERA_BURST_ID", "Values": ["T094_200143_IW2"]}, {"Name": "PATH_NUMBER", "Values": ["94"]}, {"Name": "POLARIZATION", "Values": ["VV"]}, {"Name": "PROCESSING_TYPE", "Values": ["CSLC-STATIC"]}, {"Name": "PRODUCT_VERSION", "Values": ["1.0"]}, {"Name": "SUBSWATH_NAME", "Values": ["IW2"]}, {"Name": "VALIDITY_START_DATE", "Values": ["2014-04-03"]}], "SpatialExtent": {"HorizontalSpatialDomain": {"Geometry": {"GPolygons": [{"Boundary": {"Points": [{"Latitude": 64.7619, "Longitude": -147.89146}, {"Latitude": 64.84822, "Longitude": -146.92003}, {"Latitude": 64.92365, "Longitude": -145.99997}, {"Latitude": 65.0873, "Longitude": -146.07254}, {"Latitude": 64.92501, "Longitude": -147.97547}, {"Latitude": 64.7619, "Longitude": -147.89146}]}}]}}}, "ProviderDates": [{"Type": "Insert", "Date": "2023-12-02T08:24:37Z"}, {"Type": "Update", "Date": "2023-12-02T08:24:37Z"}], "CollectionReference": {"ShortName": "OPERA_L2_CSLC-S1-STATIC_V1", "Version": "1"}, "PGEVersionClass": {"PGEName": "CSLC_S1_PGE", "PGEVersion": "2.1.0"}, "RelatedUrls": [{"URL": "https://datapool.asf.alaska.edu/CSLC-STATIC/OPERA-S1/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "Type": "GET DATA", "Description": "Download OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "Format": "HDF5"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_STATIC/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "Type": "GET DATA VIA DIRECT ACCESS", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "Format": "HDF5"}, {"URL": "https://datapool.asf.alaska.edu/CSLC-STATIC/OPERA-S1/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml", "Format": "XML"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_STATIC/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml", "Format": "XML"}, {"URL": "https://datapool.asf.alaska.edu/CSLC-STATIC/OPERA-S1/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_STATIC/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5.md5", "Format": "Text File"}, {"URL": "https://datapool.asf.alaska.edu/CSLC-STATIC/OPERA-S1/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "Download OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "s3://asf-cumulus-prod-opera-products/OPERA_L2_CSLC-S1_STATIC/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0/OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml.md5", "Type": "EXTENDED METADATA", "Description": "This link provides direct download access via S3 to OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml.md5", "Format": "Text File"}, {"URL": "https://cumulus.asf.alaska.edu/s3credentials", "Type": "VIEW RELATED INFORMATION", "Description": "S3 Credentials Endpoint"}], "InputGranules": ["S1A_IW_SLC__1SSV_20160510T032042_20160510T032109_011191_010E78_A3EF"], "Projects": [{"ShortName": "SNWG/OPERA"}], "DataGranule": {"ArchiveAndDistributionInformation": [{"Name": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.h5", "SizeInBytes": 180307417, "Format": "HDF5", "Checksum": {"Value": "07c4d06c38d7cf4189419ce58af51c36", "Algorithm": "MD5"}}, {"Name": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0.iso.xml", "SizeInBytes": 200080, "Format": "XML", "Checksum": {"Value": "c561331f652128435509ec7c6fbb77de", "Algorithm": "MD5"}}], "DayNightFlag": "Unspecified", "Identifiers": [{"Identifier": "OPERA_L2_CSLC-S1-STATIC_T094-200143-IW2_20140403_S1A_v1.0", "IdentifierType": "ProducerGranuleId"}, {"Identifier": "0.15.0", "IdentifierType": "Other", "IdentifierName": "ISCE3Version"}, {"Identifier": "0.2.3", "IdentifierType": "Other", "IdentifierName": "S1ReaderVersion"}, {"Identifier": "0.5.4", "IdentifierType": "Other", "IdentifierName": "SASVersionId"}], "ProductionDateTime": "2023-12-02T07:13:53Z"}, "Platforms": [{"ShortName": "Sentinel-1A", "Instruments": [{"ShortName": "C-SAR", "Characteristics": [{"Name": "LookDirection", "Value": "RIGHT"}], "OperationalModes": ["IW"]}]}], "MetadataSpecification": {"Name": "UMM-G", "URL": "https://cdn.earthdata.nasa.gov/umm/granule/v1.6.5", "Version": "1.6.5"}}, "geometry": {"coordinates": [[[-147.89146, 64.7619], [-146.92003, 64.84822], [-145.99997, 64.92365], [-146.07254, 65.0873], [-147.97547, 64.92501], [-147.89146, 64.7619]]], "type": "Polygon"}, "baseline": null}] \ No newline at end of file diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index 977b9788..e782723f 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -17,6 +17,9 @@ tests: - test-ASFSearch S1 Resp 1: response: S1_baseline_stack.yml +- test-ASFSearch OPERA Resp 1: + response: OPERA_Products.yml + - test-ASFSearch JERS Resp 1: response: JERS_stack.yml From e7629ab3562f8dedd918996c14fd8352d0400baf Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 14 Dec 2023 16:48:00 -0900 Subject: [PATCH 33/95] adds BaselineCalcType enum that defines baseline stacking type --- CHANGELOG.md | 7 +++++++ asf_search/ASFProduct.py | 4 +++- asf_search/Products/ALOSProduct.py | 3 +++ asf_search/Products/ERSProduct.py | 3 +++ asf_search/Products/JERSProduct.py | 3 +++ asf_search/Products/RadarsatProduct.py | 5 ++++- asf_search/Products/S1Product.py | 13 ++++++++++++ asf_search/Products/__init__.py | 2 -- asf_search/baseline/BaselineCalcType.py | 6 ++++++ asf_search/baseline/__init__.py | 1 + asf_search/baseline/stack.py | 22 +++----------------- asf_search/search/baseline_search.py | 4 ++-- tests/BaselineSearch/Stack/test_stack.py | 4 ++-- tests/BaselineSearch/test_baseline_search.py | 4 ++-- tests/Serialization/test_serialization.py | 7 ++++--- 15 files changed, 56 insertions(+), 32 deletions(-) create mode 100644 asf_search/baseline/BaselineCalcType.py diff --git a/CHANGELOG.md b/CHANGELOG.md index a28815cc..687c2ea3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,13 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - --> +------ +## [v7.0.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.2...v7.0.0) +### Adds +- `ASFProduct` now has 13 sublcasses for different sub-products that correspond to datasets: + - `S1Product`, `S1BURSTProduct`, `OPERAS1Product`, `ARIAS1GUNWProduct`, `ALOSProduct`, `RadarsatProduct`, `AIRSARProduct`, `ERSProduct`, `JERSProduct`, `UAVSARProduct`, `SIRCProduct`, `SEASATProduct`, `SMAPProduct` + - Each subclass defines relevant keys to pull from `umm` response, reducing the amount of irrelevant values in `properties` dict for certain product types + ------ ## [v6.7.2](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.1...v6.7.2) ### Adds diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 0495e420..ee75649b 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -14,7 +14,7 @@ from asf_search import ASF_LOGGER from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.CMR.translate import get as umm_get - +from asf_search.baseline import BaselineCalcType class ASFProduct: base_properties = { @@ -37,6 +37,8 @@ class ASFProduct: 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, } + baseline_type = BaselineCalcType.NONE + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.meta = args.get('meta') self.umm = args.get('umm') diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index d71f0775..f1e61076 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,6 +1,7 @@ import copy from asf_search import ASFSession, ASFProduct, ASFSearchOptions from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float +from asf_search.baseline import BaselineCalcType from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): @@ -17,6 +18,8 @@ class ALOSProduct(ASFProduct): 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } + baseline_type = BaselineCalcType.PRE_CALCULATED + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 4f4c3601..9db983be 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,6 +1,7 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float +from asf_search.baseline import BaselineCalcType from asf_search.constants import PLATFORM from asf_search.exceptions import ASFBaselineError @@ -20,6 +21,8 @@ class ERSProduct(ASFProduct): 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } + baseline_type = BaselineCalcType.PRE_CALCULATED + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index f2e64ea3..e036bd11 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,6 +1,7 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int +from asf_search.baseline import BaselineCalcType from asf_search.constants import PLATFORM from asf_search.exceptions import ASFBaselineError @@ -20,6 +21,8 @@ class JERSProduct(ASFProduct): 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } + baseline_type = BaselineCalcType.PRE_CALCULATED + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 29056758..93341aec 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,6 +1,7 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int +from asf_search.baseline import BaselineCalcType from asf_search.exceptions import ASFBaselineError class RadarsatProduct(ASFProduct): @@ -14,9 +15,11 @@ class RadarsatProduct(ASFProduct): 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } + + baseline_type = BaselineCalcType.PRE_CALCULATED def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index d48ab6d6..731359e9 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,6 +1,7 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int +from asf_search.baseline import BaselineCalcType from asf_search.constants import PLATFORM class S1Product(ASFProduct): @@ -16,6 +17,8 @@ class S1Product(ASFProduct): 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } + baseline_type = BaselineCalcType.CALCULATED + def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @@ -30,6 +33,10 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def get_baseline_calc_properties(self) -> dict: ascendingNodeTime = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) + if ascendingNodeTime is not None: + if not ascendingNodeTime.endswith('Z'): + ascendingNodeTime += 'Z' + return { 'stateVectors': self.get_state_vectors(), 'ascendingNodeTime': ascendingNodeTime @@ -38,11 +45,17 @@ def get_baseline_calc_properties(self) -> dict: def get_state_vectors(self) -> dict: positions = {} velocities = {} + positions['prePosition'], positions['prePositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) positions['postPosition'], positions['postPositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) velocities['preVelocity'], velocities['preVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) velocities['postVelocity'], velocities['postVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) + for key in ['prePositionTime','postPositionTime','preVelocityTime','postVelocityTime']: + if positions.get(key) is not None: + if not positions.get(key).endswith('Z'): + positions[key] += 'Z' + return { 'positions': positions, 'velocities': velocities diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index d4e68375..c4d524b5 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -2,10 +2,8 @@ from .S1BURSTProduct import S1BURSTProduct from .OPERAS1Product import OPERAS1Product from .ARIAS1GUNWProduct import ARIAS1GUNWProduct - from .ALOSProduct import ALOSProduct from .RadarsatProduct import RadarsatProduct - from .AIRSARProduct import AIRSARProduct from .ERSProduct import ERSProduct from .JERSProduct import JERSProduct diff --git a/asf_search/baseline/BaselineCalcType.py b/asf_search/baseline/BaselineCalcType.py new file mode 100644 index 00000000..8a42e90c --- /dev/null +++ b/asf_search/baseline/BaselineCalcType.py @@ -0,0 +1,6 @@ +from enum import Enum + +class BaselineCalcType(Enum): + NONE = 1 # isn't a calculated baseline product + PRE_CALCULATED = 2 # Has pre-calculated insarBaseline value + CALCULATED = 3 # Calculate at run-time \ No newline at end of file diff --git a/asf_search/baseline/__init__.py b/asf_search/baseline/__init__.py index 65a9d9e6..6f7d3e8c 100644 --- a/asf_search/baseline/__init__.py +++ b/asf_search/baseline/__init__.py @@ -1,2 +1,3 @@ from .calc import * from .stack import * +from .BaselineCalcType import BaselineCalcType \ No newline at end of file diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index ad3f8dac..62ecde10 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -1,10 +1,10 @@ from dateutil.parser import parse import pytz + +from asf_search.baseline import BaselineCalcType from .calc import calculate_perpendicular_baselines from asf_search import ASFProduct, ASFSearchResults -precalc_datasets = ['AL', 'R1', 'E1', 'E2', 'J1'] - def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): warnings = None @@ -15,7 +15,7 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): stack = calculate_temporal_baselines(reference, stack) - if get_platform(reference.properties['sceneName']) in precalc_datasets: + if reference.baseline_type == BaselineCalcType.PRE_CALCULATED: stack = offset_perpendicular_baselines(reference, stack) else: stack = calculate_perpendicular_baselines(reference.properties['sceneName'], stack) @@ -43,22 +43,6 @@ def check_reference(reference: ASFProduct, stack: ASFSearchResults): return reference, stack, warnings -def get_platform(reference: str): - return reference[0:2].upper() - -def get_default_product_type(product: ASFProduct): - scene_name = product.properties['sceneName'] - - if get_platform(scene_name) in ['AL']: - return 'L1.1' - if get_platform(scene_name) in ['R1', 'E1', 'E2', 'J1']: - return 'L0' - if get_platform(scene_name) in ['S1']: - if product.properties['processingLevel'] == 'BURST': - return 'BURST' - return 'SLC' - return None - def calculate_temporal_baselines(reference: ASFProduct, stack: ASFSearchResults): """ Calculates temporal baselines for a stack of products based on a reference scene and injects those values into the stack. diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 0724d53a..1c495470 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -1,4 +1,4 @@ -from asf_search.baseline.stack import get_baseline_from_stack, get_default_product_type +from asf_search.baseline.stack import get_baseline_from_stack from copy import copy from asf_search.search import search, product_search @@ -6,7 +6,7 @@ from asf_search.ASFSearchResults import ASFSearchResults from asf_search import ASFProduct from asf_search.constants import PLATFORM -from asf_search.exceptions import ASFSearchError, ASFBaselineError +from asf_search.exceptions import ASFSearchError from copy import copy precalc_platforms = [ diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index 1a71dda0..e715eb9e 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -1,6 +1,6 @@ from typing import List from numbers import Number -from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack, get_default_product_type +from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack from asf_search import ASFProduct, ASFSearchResults, ASFSession from asf_search.search.search_generator import as_ASFProduct @@ -19,7 +19,7 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: assert find_new_reference(products).properties['sceneName'] == stack[output_index]['properties']['sceneName'] def run_test_get_default_product_type(product: ASFProduct, product_type: str) -> None: - assert get_default_product_type(product) == product_type + assert product.get_default_product_type() == product_type def run_test_get_baseline_from_stack(reference, stack, output_stack, error): reference = as_ASFProduct(reference, ASFSession()) diff --git a/tests/BaselineSearch/test_baseline_search.py b/tests/BaselineSearch/test_baseline_search.py index 11d26987..90f0e22c 100644 --- a/tests/BaselineSearch/test_baseline_search.py +++ b/tests/BaselineSearch/test_baseline_search.py @@ -4,7 +4,7 @@ from asf_search.ASFSearchResults import ASFSearchResults from asf_search import ASFSession from asf_search.search.baseline_search import stack_from_id, stack_from_product -from asf_search.baseline.stack import calculate_temporal_baselines, get_default_product_type +from asf_search.baseline.stack import calculate_temporal_baselines import pytest from asf_search.search.search_generator import as_ASFProduct @@ -15,7 +15,7 @@ def run_test_get_preprocessed_stack_params(product): original_properties = product['properties'] - assert(params.processingLevel == [get_default_product_type(reference)]) + assert(params.processingLevel == [reference.get_default_product_type()]) assert(params.insarStackId == original_properties['insarStackId']) assert(len(dict(params)) == 2) diff --git a/tests/Serialization/test_serialization.py b/tests/Serialization/test_serialization.py index 294b1eb7..02eb92e1 100644 --- a/tests/Serialization/test_serialization.py +++ b/tests/Serialization/test_serialization.py @@ -1,9 +1,11 @@ -from asf_search import ASFProduct, ASFSearchResults +from asf_search import ASFProduct, ASFSearchResults, ASFSession from asf_search.ASFSearchOptions.ASFSearchOptions import ASFSearchOptions import os import json +from asf_search.search.search_generator import as_ASFProduct + def run_test_serialization(product=None, results=None, opts=ASFSearchOptions()): @@ -36,10 +38,9 @@ def run_test_serialization(product=None, results=None, opts=ASFSearchOptions()): def json_to_product(product): - output = ASFProduct() + output = as_ASFProduct(product, session=ASFSession()) output.meta = product['meta'] output.properties = product['properties'] output.geometry = product['geometry'] output.umm = product['umm'] - return output From e08ddd8e5d499b148929cc4d9f410000d98938a5 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 19 Dec 2023 11:57:57 -0900 Subject: [PATCH 34/95] moves several common property fields to ASFProduct base class, adds subswath to OPERAS1Product class as well as some RTC specific fields --- asf_search/ASFProduct.py | 6 ++++++ asf_search/Products/AIRSARProduct.py | 5 ----- asf_search/Products/ALOSProduct.py | 5 ----- asf_search/Products/ERSProduct.py | 12 ++---------- asf_search/Products/JERSProduct.py | 6 ------ asf_search/Products/OPERAS1Product.py | 14 ++++++++++++-- asf_search/Products/RadarsatProduct.py | 6 ------ asf_search/Products/S1Product.py | 5 ----- asf_search/Products/SEASATProduct.py | 6 ------ asf_search/Products/SIRCProduct.py | 7 ------- asf_search/Products/SMAPProduct.py | 6 ------ asf_search/Products/UAVSARProduct.py | 6 ------ asf_search/Products/__init__.py | 10 ++++------ 13 files changed, 24 insertions(+), 70 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 0495e420..0925a514 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -35,6 +35,12 @@ class ASFProduct: 'platform': {'path': [ 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0]}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, # overloaded by S1, ALOS, and ERS + 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, + 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, + 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, + 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index 528c53e1..4b546cc6 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -6,15 +6,10 @@ class AIRSARProduct(ASFProduct): base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index d71f0775..b6bebcf0 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -9,11 +9,6 @@ class ALOSProduct(ASFProduct): 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 4f4c3601..86f46125 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -7,25 +7,17 @@ class ERSProduct(ASFProduct): base_properties = { 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, + 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0]}, + 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - - self.properties['frameNumber'] = str(self.properties['frameNumber']) - self.properties['esaFrame'] = str(self.properties['esaFrame']) def get_baseline_calc_properties(self) -> dict: insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index f2e64ea3..883bb3db 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -7,16 +7,10 @@ class JERSProduct(ASFProduct): base_properties = { 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 2ebedde6..7ba19327 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -11,6 +11,7 @@ class OPERAS1Product(S1Product): 'operaBurstID': {'path': ['AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0]}, 'validityStartDate': {'path': ['TemporalExtent', 'SingleDateTime']}, 'bytes': {'path': ['DataGranule', 'ArchiveAndDistributionInformation']}, + 'subswath': {'path': ['AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0]}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -30,10 +31,19 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties['operaBurstID'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) self.properties['bytes'] = {entry['Name']: {'bytes': entry['SizeInBytes'], 'format': entry['Format']} for entry in self.properties['bytes']} - self.properties.pop('centerLat') - self.properties.pop('centerLon') + center = self.centroid() + self.properties['centerLat'] = center.y + self.properties['centerLon'] = center.x + self.properties.pop('frameNumber') + if (processingLevel := self.properties['processingLevel']) in ['RTC', 'RTC-STATIC']: + self.properties['bistaticDelayCorrection'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BISTATIC_DELAY_CORRECTION'), 'Values', 0) + if processingLevel == 'RTC': + self.properties['noiseCorrection'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'NOISE_CORRECTION'), 'Values', 0) + self.properties['postProcessingFilter'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POST_PROCESSING_FILTER'), 'Values', 0) + + def get_stack_opts(self): return {} diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 29056758..aaad40d2 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -8,13 +8,7 @@ class RadarsatProduct(ASFProduct): 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index d48ab6d6..2186294a 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -6,14 +6,9 @@ class S1Product(ASFProduct): base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0], }, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0], }, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0], }, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'], }, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index 0a0c56ee..70ab10e2 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -6,15 +6,9 @@ class SEASATProduct(ASFProduct): base_properties = { 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index 6910f71b..cb34fcd5 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -5,17 +5,10 @@ class SIRCProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'] }, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index 2a9263e2..41447c46 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -5,16 +5,10 @@ class SMAPProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index 805fba17..d1cbbd3f 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -5,16 +5,10 @@ class UAVSARProduct(ASFProduct): base_properties = { - 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, - 'granuleType': {'path': [ 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'orbit': {'path': [ 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber'], 'cast': try_parse_int}, - 'polarization': {'path': [ 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0]}, - 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime']}, - 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName']} } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index d4e68375..27674a8b 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -1,15 +1,13 @@ from .S1Product import S1Product -from .S1BURSTProduct import S1BURSTProduct -from .OPERAS1Product import OPERAS1Product -from .ARIAS1GUNWProduct import ARIAS1GUNWProduct - from .ALOSProduct import ALOSProduct from .RadarsatProduct import RadarsatProduct - from .AIRSARProduct import AIRSARProduct from .ERSProduct import ERSProduct from .JERSProduct import JERSProduct from .UAVSARProduct import UAVSARProduct from .SIRCProduct import SIRCProduct from .SEASATProduct import SEASATProduct -from .SMAPProduct import SMAPProduct \ No newline at end of file +from .SMAPProduct import SMAPProduct +from .S1BURSTProduct import S1BURSTProduct +from .OPERAS1Product import OPERAS1Product +from .ARIAS1GUNWProduct import ARIAS1GUNWProduct From 8941d592771979949ce0c5d49ac5f43933286841 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 20 Dec 2023 11:06:07 -0900 Subject: [PATCH 35/95] harmonizes asf-search handling of missing statevectors with SearchAPI --- asf_search/CMR/translate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index cba982d9..2959b058 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -212,7 +212,7 @@ def translate_product(item: dict) -> dict: insarBaseline = cast(float, get(umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) baseline = {} - if None not in stateVectors['positions'].values() and len(stateVectors.items()) > 0: + if ascendingNodeTime is not None: baseline['stateVectors'] = stateVectors baseline['ascendingNodeTime'] = ascendingNodeTime elif insarBaseline is not None: From 24246bfa269a028aa2dc915800959faa5f43ba8d Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 20 Dec 2023 15:07:39 -0900 Subject: [PATCH 36/95] Adds warning when missing state vectors for relevant baseline stacks --- asf_search/baseline/stack.py | 19 ++++++++++++------- asf_search/search/baseline_search.py | 4 ++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 638917ee..60fb6597 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -1,3 +1,4 @@ +from typing import Tuple, List from dateutil.parser import parse import pytz from .calc import calculate_perpendicular_baselines @@ -5,14 +6,17 @@ precalc_datasets = ['AL', 'R1', 'E1', 'E2', 'J1'] -def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): - warnings = None +def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults) -> Tuple[ASFSearchResults, List[dict]]: + warnings = [] if len(stack) == 0: raise ValueError('No products found matching stack parameters') stack = [product for product in stack if not product.properties['processingLevel'].lower().startswith('metadata') and product.baseline != None] - reference, stack, warnings = check_reference(reference, stack) + reference, stack, reference_warnings = check_reference(reference, stack) + if reference_warnings is not None: + warnings.append(reference_warnings) + stack = calculate_temporal_baselines(reference, stack) if get_platform(reference.properties['sceneName']) in precalc_datasets: @@ -20,6 +24,9 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): else: stack = calculate_perpendicular_baselines(reference.properties['sceneName'], stack) + if missing_state_vectors := len([scene for scene in stack if scene.baseline.get('noStateVectors')]): + warnings.append({'MISSING STATE VECTORS': f'{missing_state_vectors} scenes in stack missing State Vectors, perpendicular baseline not calculated for these scenes'}) + return ASFSearchResults(stack), warnings def valid_state_vectors(product: ASFProduct): @@ -40,8 +47,7 @@ def check_reference(reference: ASFProduct, stack: ASFSearchResults): warnings = None if reference.properties['sceneName'] not in [product.properties['sceneName'] for product in stack]: # Somehow the reference we built the stack from is missing?! Just pick one reference = stack[0] - warnings = [{'NEW_REFERENCE': 'A new reference scene had to be selected in order to calculate baseline values.'}] - + warnings = {'NEW_REFERENCE': 'A new reference scene had to be selected in order to calculate baseline values.'} if get_platform(reference.properties['sceneName']) in precalc_datasets: if 'insarBaseline' not in reference.baseline: raise ValueError('No baseline values available for precalculated dataset') @@ -50,8 +56,7 @@ def check_reference(reference: ASFProduct, stack: ASFSearchResults): reference = find_new_reference(stack) if reference == None: raise ValueError('No valid state vectors on any scenes in stack, this is fatal') - warnings = [{'NEW_REFERENCE': 'A new reference had to be selected in order to calculate baseline values.'}] - + warnings = {'NEW_REFERENCE': 'A new reference had to be selected in order to calculate baseline values.'} return reference, stack, warnings def get_platform(reference: str): diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 026137db..cb5d665d 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -1,3 +1,4 @@ +from asf_search import ASF_LOGGER from asf_search.baseline.stack import get_baseline_from_stack, get_default_product_type from copy import copy @@ -43,6 +44,9 @@ def stack_from_product( stack.sort(key=lambda product: product.properties['temporalBaseline']) + for warning in warnings: + ASF_LOGGER.warn(f'{warning}') + return stack From 36389b29c8eee2c523771422f733967cce61c4ee Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 20 Dec 2023 15:19:36 -0900 Subject: [PATCH 37/95] update changelog --- CHANGELOG.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a28815cc..63f27b81 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,15 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - --> +------ +## [v6.7.3](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.2...v6.7.3) +### Changed +- Baseline stacking no longer excludes products with missing state vectors from final stack, like SearchAPI + +### Added +- Adds warning when scenes in stack are missing state vectors, and logs baseline warnings with `ASF_LOGGER` + + ------ ## [v6.7.2](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.1...v6.7.2) ### Adds From 43d9810e9c4c9619490be6234392561d2ce9e20d Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 22 Dec 2023 11:47:27 -0900 Subject: [PATCH 38/95] update key access for ASFProduct properties testing --- tests/Search/test_search.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index 3a0bceb9..8646c9dc 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -32,7 +32,7 @@ def run_test_ASFSearchResults(search_resp): assert search_resp[idx]['properties']['frameNumber'] == item elif 'esaFrame' in feature.geojson()['properties'].keys() and key == 'frameNumber': continue - elif search_resp[idx]['properties'][key] is not None and item is not None: + elif search_resp[idx]['properties'].get(key) is not None and item is not None: assert item == search_resp[idx]['properties'][key] def run_test_search(search_parameters, answer): From 805116f48a87dcc10d64bf047982052481c25c1f Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 27 Dec 2023 09:51:24 -0900 Subject: [PATCH 39/95] adds dataset shortname fallbacks for subproduct class assignment --- asf_search/search/search_generator.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index d6de9610..f999f4e1 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -261,20 +261,19 @@ def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: 'SLC-BURST': ASFProductType.S1BURSTProduct, 'ALOS': ASFProductType.ALOSProduct, 'SIR-C': ASFProductType.SIRCProduct, + 'STS-59': ASFProductType.SIRCProduct, + 'STS-68': ASFProductType.SIRCProduct, 'ARIA S1 GUNW': ASFProductType.ARIAS1GUNWProduct, 'SMAP': ASFProductType.SMAPProduct, 'UAVSAR': ASFProductType.UAVSARProduct, + 'G-III': ASFProductType.UAVSARProduct, 'RADARSAT-1': ASFProductType.RadarsatProduct, - 'ERS': ASFProductType.ERSProduct, 'ERS-1': ASFProductType.ERSProduct, 'ERS-2': ASFProductType.ERSProduct, - 'JERS-1': ASFProductType.JERSProduct, - 'AIRSAR': ASFProductType.AIRSARProduct, 'DC-8': ASFProductType.AIRSARProduct, - 'SEASAT': ASFProductType.SEASATProduct, 'SEASAT 1': ASFProductType.SEASATProduct } \ No newline at end of file From ae9609961a8c459974caf8c54d5fc60fdcff0e80 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 28 Dec 2023 14:30:23 -0900 Subject: [PATCH 40/95] adds helper method for converting products in ASFSearchResults while keeping same ASFSearchResults object --- asf_search/ASFSearchResults.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index 1030e948..29397f1e 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -1,7 +1,8 @@ from collections import UserList from multiprocessing import Pool import json -from asf_search import ASFSession, ASFSearchOptions +from typing import Type, Callable +from asf_search import ASFSession, ASFSearchOptions, ASFProduct from asf_search.download.file_download_type import FileDownloadType from asf_search.exceptions import ASFSearchError @@ -79,6 +80,16 @@ def raise_if_incomplete(self) -> None: ASF_LOGGER.error(msg) raise ASFSearchError(msg) + + def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Callable[[ASFProduct], bool] = lambda _: True): + count = 0 + for idx, product in enumerate(self.data): + if criteria(product): + self.data[idx] = ASFProductSubclass(args={'umm': product.umm, 'meta': product.meta}, session=product.session) + count += 1 + + ASF_LOGGER.log(f'Converted {count} ASFProduct objects to subclass f{type(ASFProductSubclass)}') + def _download_product(args) -> None: product, path, session, fileType = args product.download(path=path, session=session, fileType=fileType) From d69f57859bffbd0a8eb7919be831070e3f28c0f0 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 29 Dec 2023 11:15:29 -0900 Subject: [PATCH 41/95] adds ASFSearchResults helper methods, get_products_by_subclass_type and get_by_property_value --- asf_search/ASFSearchResults.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index 29397f1e..d07893f5 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -1,5 +1,6 @@ from collections import UserList from multiprocessing import Pool +from functools import reduce import json from typing import Type, Callable from asf_search import ASFSession, ASFSearchOptions, ASFProduct @@ -81,7 +82,7 @@ def raise_if_incomplete(self) -> None: raise ASFSearchError(msg) - def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Callable[[ASFProduct], bool] = lambda _: True): + def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Callable = lambda _: True): count = 0 for idx, product in enumerate(self.data): if criteria(product): @@ -90,6 +91,23 @@ def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Ca ASF_LOGGER.log(f'Converted {count} ASFProduct objects to subclass f{type(ASFProductSubclass)}') + def get_products_by_subclass_type(self): + subclasses = {} + + for product in self.data: + product_type = product.get_classname() + + if subclasses.get(product_type) is None: + subclasses[product_type] = ASFSearchResults([]) + + subclasses[product_type].append(product) + + return subclasses + + def get_by_property_value(self, key: str, value): + results = ASFSearchResults([product for product in self.data if product.properties[key] == value]) + return results + def _download_product(args) -> None: product, path, session, fileType = args product.download(path=path, session=session, fileType=fileType) From c28e1ef8747beb206e0471147dda8de26f835ce8 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 29 Dec 2023 11:21:09 -0900 Subject: [PATCH 42/95] adds ASFProduct get_classname classmethod --- asf_search/ASFProduct.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 0925a514..9294751a 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -17,6 +17,10 @@ class ASFProduct: + @classmethod + def get_classname(cls): + return cls.__name__ + base_properties = { # min viable product 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': try_parse_float}, From a80172c5fe581201a2b7d4a6be6e3637204c0f3f Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 29 Dec 2023 11:36:47 -0900 Subject: [PATCH 43/95] removes get_by_properties helper method, adds doc string to get_products_by_subclass_type --- asf_search/ASFSearchResults.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index d07893f5..9f9fd4a2 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -91,7 +91,11 @@ def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Ca ASF_LOGGER.log(f'Converted {count} ASFProduct objects to subclass f{type(ASFProductSubclass)}') - def get_products_by_subclass_type(self): + def get_products_by_subclass_type(self) -> dict: + """ + Organizes results into dictionary by ASFProduct subclass name + : return: dict of ASFSearchResults, organized by ASFProduct subclass names + """ subclasses = {} for product in self.data: @@ -103,10 +107,6 @@ def get_products_by_subclass_type(self): subclasses[product_type].append(product) return subclasses - - def get_by_property_value(self, key: str, value): - results = ASFSearchResults([product for product in self.data if product.properties[key] == value]) - return results def _download_product(args) -> None: product, path, session, fileType = args From a0dbabc3bfdce4a0579a3feb3d1446a2e3eebe40 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 29 Dec 2023 13:23:44 -0900 Subject: [PATCH 44/95] adds more doc strings for ASFProduct, and asf_search.CMR.translate.get() --- asf_search/ASFProduct.py | 60 ++++++++++++++++++++++++++++++- asf_search/CMR/translate.py | 72 +++++++++++++++++++++++++++++++++++++ 2 files changed, 131 insertions(+), 1 deletion(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 9294751a..f1940207 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,4 +1,5 @@ import os +from typing import Tuple import warnings from shapely.geometry import shape, Point, Polygon, mapping import json @@ -17,6 +18,28 @@ class ASFProduct: + """ + The ASFProduct class is the base class for search results from asf-search. + Key props: + - properties: + - stores commonly acessed properties of the CMR UMM for convenience + - umm: + - The data portion of the CMR response + - meta: + - The metadata portion of the CMR response + - geometry: + - The geometry `{coordinates: [[lon, lat] ...], 'type': Polygon}` + - baseline: + - used for spatio-temporal baseline stacking, stores state vectors/ascending node time/insar baseline values when available (Not set in base ASFProduct class) + - See `S1Product` or `ALOSProduct` `get_baseline_calc_properties()` methods for implementation examples + + Key methods: + - `download()` + - `stack()` + - `remotezip()` + + + """ @classmethod def get_classname(cls): return cls.__name__ @@ -46,6 +69,18 @@ def get_classname(cls): 'processingDate': {'path': [ 'DataGranule', 'ProductionDateTime'], }, 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } + """ + base_properties dictionary, mapping readable property names to paths and optional type casting + + entries are organized as such: + - `PROPERTY_NAME`: The name the property should be called in `ASFProduct.properties` + - `path`: the expected path in the CMR UMM json granule response as a list + - `cast`: (optional): the optional type casting method + + Defining `base_properties` in subclasses allows for defining custom properties or overiding existing ones. + See `S1Product._get_property_paths()` on how subclasses are expected to + combine `ASFProduct.base_properties` with their own separately defined `base_properties` + """ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.meta = args.get('meta') @@ -173,6 +208,9 @@ def remotezip(self, session: ASFSession) -> RemoteZip: return remotezip(self.properties['url'], session=session) def translate_product(self, item: dict) -> dict: + """ + Generates `properties` and `geometry` from the CMR UMM response + """ try: coordinates = item['umm']['SpatialExtent']['HorizontalSpatialDomain']['Geometry']['GPolygons'][0]['Boundary']['Points'] coordinates = [[c['Longitude'], c['Latitude']] for c in coordinates] @@ -204,18 +242,38 @@ def translate_product(self, item: dict) -> dict: # ASFProduct subclasses define extra/override param key + UMM pathing here @staticmethod def _get_property_paths() -> dict: + """ + Returns base_properties of class, subclasses such as `S1Product` (or user provided subclasses) can override this to + define which properties they want in their subclass's properties dict. + + (See `S1Product._get_property_paths()` for example of combining base_properties of multiple classes) + + :returns dictionary, {`PROPERTY_NAME`: {'path': [umm, path, to, value], 'cast (optional)': Callable_to_cast_value}, ...} + """ return ASFProduct.base_properties def get_baseline_calc_properties(self) -> dict: + """ + Used by subclasses to assign baseline values to `ASFProduct.baseline` property. + """ return {} @staticmethod def get_default_product_type(): + """ + Used for baseline stack building, see S1Product or AlosProduct versions for example implementations + """ return None def is_valid_reference(self): + """ + Used for baseline stack reference validation, see S1Product or AlosProduct versions for example implementations + """ return False - def get_sort_keys(self): + def get_sort_keys(self) -> Tuple: + """ + Returns tuple of primary and secondary date values used for sorting final search results + """ return (self.properties.get('stopTime'), self.properties.get('fileID', 'sceneName')) \ No newline at end of file diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index b620df9b..703e0f45 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -282,6 +282,78 @@ def cast(f, v): def get(item: dict, *args): + """ + Used to search for values in CMR UMM + + :param item: the umm dict returned from CMR + :param *args: the expected path to the value + + Example case: + "I want to grab the polarization from the granule umm" + ``` + item = { + 'AdditionalAttributes': [ + { + 'Name': 'POLARIZATION', + 'Values': ['VV', 'VH'] + }, + ... + ], + ... + } + ``` + + The path provided to *args would look like this: + ``` + 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0 + result: 'VV' + ``` + + - `'AdditionalAttributes'` acts like item['AdditionalAttributes'], which is a list of dictionaries + + - Since `AdditionalAttributes` is a LIST of dictionaries, we search for a dict with the key value pair, + `('Name', 'POLARIZATION')` + + - If found, we try to access that dictionary's `Values` key + - Since `Values` is a list, we can access the first index `0` (in this case, 'VV') + + --- + + If you want more of the umm, simply reduce how deep you search: + Example: "I need BOTH polarizations (`OPERAS1Product` does this, noticed the omitted `0`) + + ``` + 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values' + result: ['VV', 'VH'] + ``` + + --- + + Example: "I need the ENTIRE POLARIZATION dict" + + ``` + 'AdditionalAttributes', ('Name', 'POLARIZATION') + result: { + 'Name': 'POLARIZATION', + 'Values': ['VV', 'VH'] + } + ``` + + --- + + ADVANCED: + Sometimes there are multiple dictionaries in a list that have the same key value pair we're searching for + (See `OPERAS1Product` umm under `RelatedUrls`). This means we can miss values since we're only grabbing the first match + depending on how the umm is organized. There is a way to get ALL data that matches our key value criteria. + + Example: "I need ALL `URL` values for dictionaries in `RelatedUrls` where `Type` is `GET DATA`" (See in use in `OPERAS1Product` class) + ``` + 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0 + ``` + + + + """ if item is None: return None for key in args: From 0cf521af9e1573f06fc35a7b6cd1017465e633e0 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 3 Jan 2024 15:47:23 -0900 Subject: [PATCH 45/95] adds docstring for subproducts with links to ASF documentation. Removes soem unnecessary methods, adds get_additional_urls() method, with override for burst products --- asf_search/ASFProduct.py | 35 +++------- asf_search/CMR/translate.py | 3 - asf_search/Products/AIRSARProduct.py | 6 +- asf_search/Products/ALOSProduct.py | 15 ++--- asf_search/Products/ARIAS1GUNWProduct.py | 11 ++-- asf_search/Products/ERSProduct.py | 20 +++--- asf_search/Products/JERSProduct.py | 17 ++--- asf_search/Products/OPERAS1Product.py | 14 ++-- asf_search/Products/RadarsatProduct.py | 11 ++-- asf_search/Products/S1BURSTProduct.py | 34 ++++++++-- asf_search/Products/S1Product.py | 81 ++++++++++-------------- asf_search/Products/SEASATProduct.py | 7 +- asf_search/Products/SIRCProduct.py | 6 +- asf_search/Products/SMAPProduct.py | 6 +- asf_search/Products/UAVSARProduct.py | 6 +- 15 files changed, 128 insertions(+), 144 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index f1940207..6551e16f 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,5 +1,5 @@ import os -from typing import Tuple +from typing import Tuple, Union import warnings from shapely.geometry import shape, Point, Polygon, mapping import json @@ -132,32 +132,22 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, urls = [] - def get_additional_urls(): - output = [] - for url in self.properties['additionalUrls']: - if self.properties['processingLevel'] == 'BURST': - # Burst XML filenames are just numbers, this makes it more indentifiable - file_name = '.'.join(default_filename.split('.')[:-1]) + url.split('.')[-1] - else: - # otherwise just use the name found in the url - file_name = os.path.split(parse.urlparse(url).path)[1] - urls.append((f"{file_name}", url)) - - return output - if fileType == FileDownloadType.DEFAULT_FILE: urls.append((default_filename, self.properties['url'])) elif fileType == FileDownloadType.ADDITIONAL_FILES: - urls.extend(get_additional_urls()) + urls.extend(self.get_additional_urls()) elif fileType == FileDownloadType.ALL_FILES: urls.append((default_filename, self.properties['url'])) - urls.extend(get_additional_urls()) + urls.extend(self.get_additional_urls()) else: raise ValueError("Invalid FileDownloadType provided, the valid types are 'DEFAULT_FILE', 'ADDITIONAL_FILES', and 'ALL_FILES'") for filename, url in urls: download_url(url=url, path=path, filename=filename, session=session) + def get_additional_urls(self): + return [(os.path.split(parse.urlparse(url).path)[1], url) for url in self.properties['additionalUrls']] + def stack( self, opts: ASFSearchOptions = None @@ -176,13 +166,13 @@ def stack( return stack_from_product(self, opts=opts) - def get_stack_opts(self) -> ASFSearchOptions: + def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ Build search options that can be used to find an insar stack for this product :return: ASFSearchOptions describing appropriate options for building a stack from this product """ - return {} + return opts def centroid(self) -> Point: """ @@ -257,15 +247,8 @@ def get_baseline_calc_properties(self) -> dict: Used by subclasses to assign baseline values to `ASFProduct.baseline` property. """ return {} - - @staticmethod - def get_default_product_type(): - """ - Used for baseline stack building, see S1Product or AlosProduct versions for example implementations - """ - return None - def is_valid_reference(self): + def is_valid_reference(self) -> bool: """ Used for baseline stack reference validation, see S1Product or AlosProduct versions for example implementations """ diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index 703e0f45..4752fe3d 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -350,9 +350,6 @@ def get(item: dict, *args): ``` 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0 ``` - - - """ if item is None: return None diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index 4b546cc6..bc0cff92 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -1,9 +1,11 @@ import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int -from asf_search.exceptions import ASFBaselineError +from asf_search.CMR.translate import try_parse_float, try_parse_int class AIRSARProduct(ASFProduct): + """ + ASF Dataset Overview Page: https://asf.alaska.edu/data-sets/sar-data-sets/airsar/ + """ base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index b6bebcf0..7d16b41b 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -4,6 +4,11 @@ from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): + """ + Used for ALOS Palsar and Avnir dataset products + + ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/alos-palsar/ + """ base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, @@ -27,11 +32,9 @@ def get_baseline_calc_properties(self) -> dict: 'insarBaseline': insarBaseline } - def get_stack_opts(self, - opts: ASFSearchOptions = None): - + def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = ALOSProduct.get_default_product_type() + stack_opts.processingLevel = 'L1.1' if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] @@ -45,10 +48,6 @@ def _get_property_paths() -> dict: **ASFProduct._get_property_paths(), **ALOSProduct.base_properties } - - @staticmethod - def get_default_product_type(): - return 'L1.1' def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 4f13d4b6..4819e285 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -1,8 +1,12 @@ from asf_search import ASFSession from asf_search.Products import S1Product -from asf_search.CMR.translate import get, try_parse_float, try_parse_int -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast +from asf_search.CMR.translate import get, try_parse_float class ARIAS1GUNWProduct(S1Product): + """ + Used for ARIA S1 GUNW Products + + ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/derived-data-sets/sentinel-1-interferograms/ + """ base_properties = { 'perpendicularBaseline': {'path': ['AdditionalAttributes', ('Name', 'PERPENDICULAR_BASELINE'), 'Values', 0], 'cast': try_parse_float}, 'orbit': {'path': ['OrbitCalculatedSpatialDomains']} @@ -25,6 +29,3 @@ def _get_property_paths() -> dict: **ARIAS1GUNWProduct.base_properties } - @staticmethod - def get_default_product_type(): - return None diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 86f46125..6724b9ad 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,10 +1,15 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float -from asf_search.constants import PLATFORM +from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_round_float from asf_search.exceptions import ASFBaselineError class ERSProduct(ASFProduct): + """ + Used for ERS-1 and ERS-2 products + + ASF ERS-1 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-1/ + ASF ERS-2 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-2/ + """ base_properties = { 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0]}, @@ -29,12 +34,9 @@ def get_baseline_calc_properties(self) -> dict: return None - def get_stack_opts(self, - opts: ASFSearchOptions = None): - + def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = ERSProduct.get_default_product_type() - + stack_opts.processingLevel = 'L0' if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts @@ -48,10 +50,6 @@ def _get_property_paths() -> dict: **ERSProduct.base_properties } - @staticmethod - def get_default_product_type(): - return 'L0' - def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 883bb3db..63abbb0b 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,10 +1,12 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int -from asf_search.constants import PLATFORM +from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float from asf_search.exceptions import ASFBaselineError class JERSProduct(ASFProduct): + """ + ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/jers-1/ + """ base_properties = { 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, @@ -35,22 +37,17 @@ def _get_property_paths() -> dict: **JERSProduct.base_properties } - def get_stack_opts(self, - opts: ASFSearchOptions = None): + def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = JERSProduct.get_default_product_type() - + + stack_opts.processingLevel = 'L0' if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - @staticmethod - def get_default_product_type(): - return 'L0' - def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 7ba19327..8477bdb1 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -1,9 +1,11 @@ -from asf_search import ASFSession +from asf_search import ASFSearchOptions, ASFSession from asf_search.CMR.translate import get as umm_get from asf_search.Products import S1Product -from asf_search.constants import PLATFORM class OPERAS1Product(S1Product): + """ + ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/opera/ + """ base_properties = { 'centerLat': {'path': []}, # Opera products lacks these fields 'centerLon': {'path': []}, @@ -44,8 +46,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties['postProcessingFilter'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POST_PROCESSING_FILTER'), 'Values', 0) - def get_stack_opts(self): - return {} + def get_stack_opts(self, opts: ASFSearchOptions = ASFSearchOptions()) -> ASFSearchOptions: + return opts @staticmethod def _get_property_paths() -> dict: @@ -54,10 +56,6 @@ def _get_property_paths() -> dict: **OPERAS1Product.base_properties } - @staticmethod - def get_default_product_type(): - return 'CSLC' - def is_valid_reference(self): return False diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index aaad40d2..fce9f9ce 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,9 +1,12 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int +from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float from asf_search.exceptions import ASFBaselineError class RadarsatProduct(ASFProduct): + """ + ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/radarsat-1/ + """ base_properties = { 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, @@ -30,7 +33,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = RadarsatProduct.get_default_product_type() + stack_opts.processingLevel = 'L0' if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] @@ -45,10 +48,6 @@ def _get_property_paths() -> dict: **RadarsatProduct.base_properties } - @staticmethod - def get_default_product_type(): - return 'L0' - def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index d2911c66..b390d4c4 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -2,9 +2,20 @@ from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product from asf_search.CMR.translate import get, try_parse_int -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast + class S1BURSTProduct(S1Product): + """ + S1Product Subclass made specifically for Sentinel-1 SLC-BURST products + + Key features/properties: + - `properties['burst']` contains SLC-BURST Specific fields such as `fullBurstID` and `burstIndex` + - `properties['additionalUrls']` contains BURST-XML url + - SLC-BURST specific stacking params + + ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/data-sets/derived-data-sets/sentinel-1-bursts/ + """ base_properties = { + 'bytes': {'path': ['AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0]}, 'absoluteBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], 'cast': try_parse_int}, 'relativeBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], 'cast': try_parse_int}, 'fullBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0]}, @@ -18,7 +29,9 @@ class S1BURSTProduct(S1Product): def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.properties['sceneName'] = self.properties['fileID'] - self.properties['bytes'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0) + + # Gathers burst properties into `burst` specific dict + # rather than properties dict to limit breaking changes self.properties['burst'] = { 'absoluteBurstID': self.properties.pop('absoluteBurstID'), 'relativeBurstID': self.properties.pop('relativeBurstID'), @@ -34,12 +47,18 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): if urls is not None: self.properties['url'] = urls[0] self.properties['fileName'] = self.properties['fileID'] + '.' + urls[0].split('.')[-1] - self.properties['additionalUrls'] = [urls[1]] + self.properties['additionalUrls'] = [urls[1]] # xml-metadata url def get_stack_opts(self, opts: ASFSearchOptions = None): + """ + Returns the search options asf-search will use internally to build an SLC-BURST baseline stack from + + :param opts: additional criteria for limiting + :returns ASFSearchOptions used for build Sentinel-1 SLC-BURST Stack + """ stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = S1BURSTProduct.get_default_product_type() + stack_opts.processingLevel = 'BURST' stack_opts.fullBurstID = self.properties['burst']['fullBurstID'] stack_opts.polarization = [self.properties['polarization']] return stack_opts @@ -51,6 +70,7 @@ def _get_property_paths() -> dict: **S1BURSTProduct.base_properties } - @staticmethod - def get_default_product_type(): - return 'BURST' + def get_additional_urls(self): + # Burst XML filenames are just numbers, this makes it more indentifiable + file_name = '.'.join(self.properties['fileName'].split('.')[:-1]) + 'xml' + return [(file_name, self.properties['additionalUrls'][0])] \ No newline at end of file diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 2186294a..a65b25dd 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -4,12 +4,23 @@ from asf_search.constants import PLATFORM class S1Product(ASFProduct): + """ + The S1Product classes covers most Sentinel-1 Products + (For S1 BURST-SLC, OPERA-S1, and ARIA-S1 GUNW Products, see relevant S1 subclasses) + + ASF Dataset Overview Page: https://asf.alaska.edu/datasets/daac/sentinel-1/ + """ + base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) - 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0], }, - 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0], }, - 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'], }, + 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion']}, } + """ + S1 Specific path override + - frameNumber: overrides ASFProduct's `CENTER_ESA_FRAME` with `FRAME_NUMBER` + """ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @@ -23,6 +34,9 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def get_baseline_calc_properties(self) -> dict: + """ + :returns properties required for SLC baseline stack calculations + """ ascendingNodeTime = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) return { @@ -31,6 +45,10 @@ def get_baseline_calc_properties(self) -> dict: } def get_state_vectors(self) -> dict: + """ + Used in spatio-temporal perpendicular baseline calculations for non-pre-calculated stacks + + :returns dictionary of pre/post positions, velocities, and times""" positions = {} velocities = {} positions['prePosition'], positions['prePositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) @@ -43,12 +61,16 @@ def get_state_vectors(self) -> dict: 'velocities': velocities } - def get_stack_opts(self, - opts: ASFSearchOptions = None): - + def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: + """ + Returns the search options asf-search will use internally to build an SLC baseline stack from + + :param opts: additional criteria for limiting + :returns ASFSearchOptions used for build Sentinel-1 SLC Stack + """ stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = S1Product.get_default_product_type() + stack_opts.processingLevel = 'SLC' stack_opts.beamMode = [self.properties['beamModeType']] stack_opts.flightDirection = self.properties['flightDirection'] stack_opts.relativeOrbit = [int(self.properties['pathNumber'])] # path @@ -57,56 +79,19 @@ def get_stack_opts(self, stack_opts.intersectsWith = self.centroid().wkt return stack_opts - # return { - # 'processingLevel': 'SLC', - # 'beamMode': [self.properties['beamModeType']], - # 'flightDirection': self.properties['flightDirection'], - # 'relativeOrbit': [int(self.properties['pathNumber'])], # path - # 'platform': [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B], - # 'polarization': ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'], - # 'intersectsWith': self.centroid().wkt - # } - # if reference.properties['processingLevel'] == 'BURST': - # stack_opts.processingLevel = 'BURST' - # else: - # stack_opts.processingLevel = 'SLC' - - # if reference.properties['processingLevel'] == 'BURST': - # stack_opts.fullBurstID = reference.properties['burst']['fullBurstID'] - # stack_opts.polarization = [reference.properties['polarization']] - # return stack_opts - - # stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] - - # stack_opts.beamMode = [reference.properties['beamModeType']] - # stack_opts.flightDirection = reference.properties['flightDirection'] - # stack_opts.relativeOrbit = [int(reference.properties['pathNumber'])] # path - - # if reference.properties['polarization'] in ['HH', 'HH+HV']: - # stack_opts.polarization = ['HH','HH+HV'] - # elif reference.properties['polarization'] in ['VV', 'VV+VH']: - # stack_opts.polarization = ['VV','VV+VH'] - # else: - # stack_opts.polarization = [reference.properties['polarization']] - - # stack_opts.intersectsWith = reference.centroid().wkt - # return stack_opts - + @staticmethod def _get_property_paths() -> dict: return { **ASFProduct._get_property_paths(), **S1Product.base_properties } - - @staticmethod - def get_default_product_type(): - return 'SLC' - def is_valid_reference(self): + def is_valid_reference(self) -> bool: + """perpendicular baselines are not pre-calculated for S1 products and require position/velocity state vectors to calculate""" return self.valid_state_vectors() - def valid_state_vectors(self): + def valid_state_vectors(self) -> bool: for key in ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime']: if key not in self.baseline['stateVectors']['positions'] or self.baseline['stateVectors']['positions'][key] == None: return False diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index 70ab10e2..6e1c7976 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -1,9 +1,10 @@ -import copy from asf_search import ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float -from asf_search.constants import PLATFORM +from asf_search.CMR.translate import try_parse_float, try_round_float class SEASATProduct(ASFProduct): + """ + ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/sar-data-sets/seasat/ + """ base_properties = { 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index cb34fcd5..79337c62 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -1,9 +1,9 @@ -import copy from asf_search import ASFProduct, ASFSession -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int -from asf_search.constants import PLATFORM class SIRCProduct(ASFProduct): + """ + Dataset Documentation Page: https://eospso.nasa.gov/missions/spaceborne-imaging-radar-c + """ base_properties = { 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index 41447c46..d1036329 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -1,9 +1,11 @@ import copy from asf_search import ASFProduct, ASFSession -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int -from asf_search.constants import PLATFORM +from asf_search.CMR.translate import try_parse_float class SMAPProduct(ASFProduct): + """ + ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/sar-data-sets/soil-moisture-active-passive-smap-mission/ + """ base_properties = { 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index d1cbbd3f..b6bb578a 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -1,9 +1,11 @@ import copy from asf_search import ASFProduct, ASFSession -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_float, try_parse_int -from asf_search.constants import PLATFORM +from asf_search.CMR.translate import try_parse_float class UAVSARProduct(ASFProduct): + """ + ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/uavsar/ + """ base_properties = { 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, From 194e4869532c040fc9e2e21189b7d14b2046e761 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 3 Jan 2024 16:40:54 -0900 Subject: [PATCH 46/95] lets s1burst xml download with custom filenames --- asf_search/ASFProduct.py | 8 +++++--- asf_search/Products/S1BURSTProduct.py | 8 ++++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 6551e16f..3b90d9f2 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -135,17 +135,19 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, if fileType == FileDownloadType.DEFAULT_FILE: urls.append((default_filename, self.properties['url'])) elif fileType == FileDownloadType.ADDITIONAL_FILES: - urls.extend(self.get_additional_urls()) + urls.extend(self.get_additional_urls(default_filename)) elif fileType == FileDownloadType.ALL_FILES: urls.append((default_filename, self.properties['url'])) - urls.extend(self.get_additional_urls()) + urls.extend(self.get_additional_urls(default_filename)) else: raise ValueError("Invalid FileDownloadType provided, the valid types are 'DEFAULT_FILE', 'ADDITIONAL_FILES', and 'ALL_FILES'") for filename, url in urls: download_url(url=url, path=path, filename=filename, session=session) - def get_additional_urls(self): + def get_additional_filenames_and_urls(self, + default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) + ): return [(os.path.split(parse.urlparse(url).path)[1], url) for url in self.properties['additionalUrls']] def stack( diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index b390d4c4..39d37f8b 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -70,7 +70,11 @@ def _get_property_paths() -> dict: **S1BURSTProduct.base_properties } - def get_additional_urls(self): + def get_additional_filenames_and_urls(self, default_filename: str = None): # Burst XML filenames are just numbers, this makes it more indentifiable - file_name = '.'.join(self.properties['fileName'].split('.')[:-1]) + 'xml' + if file_name is None: + file_name = '.'.join(self.properties['fileName'].split('.')[:-1]) + 'xml' + else: + file_name = '.'.join(default_filename.split('.')[:-1]) + 'xml' + return [(file_name, self.properties['additionalUrls'][0])] \ No newline at end of file From 98ddf522045e2c69a7b12565081a3f99e9d1354f Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 3 Jan 2024 17:06:23 -0900 Subject: [PATCH 47/95] moves BaselineCalcType enum --- asf_search/ASFProduct.py | 2 +- asf_search/Products/ALOSProduct.py | 2 +- asf_search/{baseline => Products}/BaselineCalcType.py | 0 asf_search/Products/ERSProduct.py | 2 +- asf_search/Products/JERSProduct.py | 2 +- asf_search/Products/RadarsatProduct.py | 2 +- asf_search/Products/S1Product.py | 2 +- asf_search/Products/__init__.py | 2 ++ asf_search/baseline/__init__.py | 3 +-- asf_search/baseline/stack.py | 3 +-- 10 files changed, 10 insertions(+), 10 deletions(-) rename asf_search/{baseline => Products}/BaselineCalcType.py (100%) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 7d48e887..d72cf7eb 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -15,7 +15,7 @@ from asf_search import ASF_LOGGER from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.CMR.translate import get as umm_get -from asf_search.baseline import BaselineCalcType +from asf_search.Products import BaselineCalcType class ASFProduct: """ diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index f4ec3cd4..ba4ca493 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,7 +1,7 @@ import copy from asf_search import ASFSession, ASFProduct, ASFSearchOptions from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float -from asf_search.baseline import BaselineCalcType +from asf_search.Products import BaselineCalcType from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): diff --git a/asf_search/baseline/BaselineCalcType.py b/asf_search/Products/BaselineCalcType.py similarity index 100% rename from asf_search/baseline/BaselineCalcType.py rename to asf_search/Products/BaselineCalcType.py diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 85a8369b..887108a2 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,6 +1,6 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.baseline import BaselineCalcType +from asf_search.Products import BaselineCalcType from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_round_float from asf_search.exceptions import ASFBaselineError diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index bf146ec6..b81fbe82 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,6 +1,6 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.baseline import BaselineCalcType +from asf_search.Products import BaselineCalcType from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float from asf_search.exceptions import ASFBaselineError diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 6c1eddb8..7a168e9e 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,6 +1,6 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.baseline import BaselineCalcType +from asf_search.Products import BaselineCalcType from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float from asf_search.exceptions import ASFBaselineError diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 7dbcf225..22efcd96 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,7 +1,7 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int -from asf_search.baseline import BaselineCalcType +from asf_search.Products import BaselineCalcType from asf_search.constants import PLATFORM class S1Product(ASFProduct): diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index 27674a8b..416e0a1f 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -11,3 +11,5 @@ from .S1BURSTProduct import S1BURSTProduct from .OPERAS1Product import OPERAS1Product from .ARIAS1GUNWProduct import ARIAS1GUNWProduct + +from .BaselineCalcType import BaselineCalcType \ No newline at end of file diff --git a/asf_search/baseline/__init__.py b/asf_search/baseline/__init__.py index 6f7d3e8c..57ecb405 100644 --- a/asf_search/baseline/__init__.py +++ b/asf_search/baseline/__init__.py @@ -1,3 +1,2 @@ from .calc import * -from .stack import * -from .BaselineCalcType import BaselineCalcType \ No newline at end of file +from .stack import * \ No newline at end of file diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 62ecde10..a6b02679 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -1,9 +1,8 @@ from dateutil.parser import parse import pytz -from asf_search.baseline import BaselineCalcType from .calc import calculate_perpendicular_baselines -from asf_search import ASFProduct, ASFSearchResults +from asf_search import ASFProduct, ASFSearchResults, BaselineCalcType def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): warnings = None From e8291d757521ac8de7c58ca142a9eed0a6bbae9a Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 09:27:03 -0900 Subject: [PATCH 48/95] fixes baseline stacking enum import issue, moves enum class def into ASFProduct class def --- asf_search/ASFProduct.py | 15 ++++++++++++--- asf_search/Products/ALOSProduct.py | 3 +-- asf_search/Products/BaselineCalcType.py | 6 ------ asf_search/Products/ERSProduct.py | 3 +-- asf_search/Products/JERSProduct.py | 3 +-- asf_search/Products/RadarsatProduct.py | 3 +-- asf_search/Products/S1Product.py | 6 +++--- asf_search/Products/__init__.py | 2 -- asf_search/baseline/stack.py | 4 ++-- 9 files changed, 21 insertions(+), 24 deletions(-) delete mode 100644 asf_search/Products/BaselineCalcType.py diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index d72cf7eb..b843da8a 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,3 +1,4 @@ +from enum import Enum import os from typing import Tuple, Union import warnings @@ -15,7 +16,6 @@ from asf_search import ASF_LOGGER from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.CMR.translate import get as umm_get -from asf_search.Products import BaselineCalcType class ASFProduct: """ @@ -44,6 +44,17 @@ class ASFProduct: def get_classname(cls): return cls.__name__ + class BaselineCalcType(Enum): + """ + ENUM to determine how asf-search will calculate perpendicular baseline + + """ + NONE = 1 # isn't a calculated baseline product + PRE_CALCULATED = 2 # Has pre-calculated insarBaseline value + CALCULATED = 3 # Calculate at run-time + + baseline_type = BaselineCalcType.NONE + base_properties = { # min viable product 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': try_parse_float}, @@ -82,8 +93,6 @@ def get_classname(cls): combine `ASFProduct.base_properties` with their own separately defined `base_properties` """ - baseline_type = BaselineCalcType.NONE - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.meta = args.get('meta') self.umm = args.get('umm') diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index ba4ca493..e5cd5a25 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,7 +1,6 @@ import copy from asf_search import ASFSession, ASFProduct, ASFSearchOptions from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float -from asf_search.Products import BaselineCalcType from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): @@ -18,7 +17,7 @@ class ALOSProduct(ASFProduct): 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } - baseline_type = BaselineCalcType.PRE_CALCULATED + baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) diff --git a/asf_search/Products/BaselineCalcType.py b/asf_search/Products/BaselineCalcType.py deleted file mode 100644 index 8a42e90c..00000000 --- a/asf_search/Products/BaselineCalcType.py +++ /dev/null @@ -1,6 +0,0 @@ -from enum import Enum - -class BaselineCalcType(Enum): - NONE = 1 # isn't a calculated baseline product - PRE_CALCULATED = 2 # Has pre-calculated insarBaseline value - CALCULATED = 3 # Calculate at run-time \ No newline at end of file diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 887108a2..18aef97c 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,6 +1,5 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.Products import BaselineCalcType from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_round_float from asf_search.exceptions import ASFBaselineError @@ -21,7 +20,7 @@ class ERSProduct(ASFProduct): 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } - baseline_type = BaselineCalcType.PRE_CALCULATED + baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index b81fbe82..dbcc8985 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,6 +1,5 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.Products import BaselineCalcType from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float from asf_search.exceptions import ASFBaselineError @@ -17,7 +16,7 @@ class JERSProduct(ASFProduct): 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } - baseline_type = BaselineCalcType.PRE_CALCULATED + baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 7a168e9e..518344c7 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,6 +1,5 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.Products import BaselineCalcType from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float from asf_search.exceptions import ASFBaselineError @@ -16,7 +15,7 @@ class RadarsatProduct(ASFProduct): 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } - baseline_type = BaselineCalcType.PRE_CALCULATED + baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 22efcd96..de99b756 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,7 +1,6 @@ import copy from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int -from asf_search.Products import BaselineCalcType from asf_search.constants import PLATFORM class S1Product(ASFProduct): @@ -23,7 +22,7 @@ class S1Product(ASFProduct): - frameNumber: overrides ASFProduct's `CENTER_ESA_FRAME` with `FRAME_NUMBER` """ - baseline_type = BaselineCalcType.CALCULATED + baseline_type = ASFProduct.BaselineCalcType.CALCULATED def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @@ -108,4 +107,5 @@ def valid_state_vectors(self) -> bool: for key in ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime']: if key not in self.baseline['stateVectors']['positions'] or self.baseline['stateVectors']['positions'][key] == None: return False - return True \ No newline at end of file + return True + \ No newline at end of file diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index 416e0a1f..27674a8b 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -11,5 +11,3 @@ from .S1BURSTProduct import S1BURSTProduct from .OPERAS1Product import OPERAS1Product from .ARIAS1GUNWProduct import ARIAS1GUNWProduct - -from .BaselineCalcType import BaselineCalcType \ No newline at end of file diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index a6b02679..0c0d7f47 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -2,7 +2,7 @@ import pytz from .calc import calculate_perpendicular_baselines -from asf_search import ASFProduct, ASFSearchResults, BaselineCalcType +from asf_search import ASFProduct, ASFSearchResults def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): warnings = None @@ -14,7 +14,7 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): stack = calculate_temporal_baselines(reference, stack) - if reference.baseline_type == BaselineCalcType.PRE_CALCULATED: + if reference.baseline_type == ASFProduct.BaselineCalcType.PRE_CALCULATED: stack = offset_perpendicular_baselines(reference, stack) else: stack = calculate_perpendicular_baselines(reference.properties['sceneName'], stack) From 1d4e68b8ef26030fd54169f1aa268f4380506eac Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 09:33:18 -0900 Subject: [PATCH 49/95] updates baseline test case --- tests/BaselineSearch/Stack/test_stack.py | 2 +- tests/BaselineSearch/test_baseline_search.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index e715eb9e..e8050495 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -19,7 +19,7 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: assert find_new_reference(products).properties['sceneName'] == stack[output_index]['properties']['sceneName'] def run_test_get_default_product_type(product: ASFProduct, product_type: str) -> None: - assert product.get_default_product_type() == product_type + assert product.properties['processingLevel'] == product_type def run_test_get_baseline_from_stack(reference, stack, output_stack, error): reference = as_ASFProduct(reference, ASFSession()) diff --git a/tests/BaselineSearch/test_baseline_search.py b/tests/BaselineSearch/test_baseline_search.py index 90f0e22c..99319a93 100644 --- a/tests/BaselineSearch/test_baseline_search.py +++ b/tests/BaselineSearch/test_baseline_search.py @@ -15,7 +15,7 @@ def run_test_get_preprocessed_stack_params(product): original_properties = product['properties'] - assert(params.processingLevel == [reference.get_default_product_type()]) + assert(params.processingLevel == [reference.properties['processingLevel']]) assert(params.insarStackId == original_properties['insarStackId']) assert(len(dict(params)) == 2) From 54a7f6371f001c181ef728ab7372c6e8389fa7bc Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 09:55:50 -0900 Subject: [PATCH 50/95] re-adds get_default_product_type, make more clear it's baseline related --- asf_search/ASFProduct.py | 8 +++++++- asf_search/Products/ALOSProduct.py | 12 +++++++++++- asf_search/Products/ERSProduct.py | 12 +++++++++++- asf_search/Products/JERSProduct.py | 12 +++++++++++- asf_search/Products/RadarsatProduct.py | 12 +++++++++++- asf_search/Products/S1BURSTProduct.py | 12 +++++++++++- asf_search/Products/S1Product.py | 10 +++++++++- tests/BaselineSearch/Stack/test_stack.py | 2 +- tests/BaselineSearch/test_baseline_search.py | 2 +- 9 files changed, 73 insertions(+), 9 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index b843da8a..97cd01e4 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -272,4 +272,10 @@ def get_sort_keys(self) -> Tuple: Returns tuple of primary and secondary date values used for sorting final search results """ return (self.properties.get('stopTime'), self.properties.get('fileID', 'sceneName')) - \ No newline at end of file + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return None \ No newline at end of file diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index e5cd5a25..d343d197 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,6 +1,8 @@ import copy +from typing import Union from asf_search import ASFSession, ASFProduct, ASFSearchOptions from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float +from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError class ALOSProduct(ASFProduct): @@ -56,4 +58,12 @@ def is_valid_reference(self): if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - return True \ No newline at end of file + return True + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return PRODUCT_TYPE.L1_1 + \ No newline at end of file diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 18aef97c..d03dc9a4 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,6 +1,8 @@ import copy +from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_round_float +from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError class ERSProduct(ASFProduct): @@ -57,4 +59,12 @@ def is_valid_reference(self): if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - return True \ No newline at end of file + return True + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return PRODUCT_TYPE.L0 + \ No newline at end of file diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index dbcc8985..43b3d26f 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,6 +1,8 @@ import copy +from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float +from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError class JERSProduct(ASFProduct): @@ -55,4 +57,12 @@ def is_valid_reference(self): if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - return True \ No newline at end of file + return True + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return PRODUCT_TYPE.L0 + \ No newline at end of file diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 518344c7..3fc9a333 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,6 +1,8 @@ import copy +from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float +from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError class RadarsatProduct(ASFProduct): @@ -55,4 +57,12 @@ def is_valid_reference(self): if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - return True \ No newline at end of file + return True + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return PRODUCT_TYPE.L0 + \ No newline at end of file diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 39d37f8b..15f84075 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -1,7 +1,9 @@ import copy +from typing import Union from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product from asf_search.CMR.translate import get, try_parse_int +from asf_search.constants import PRODUCT_TYPE class S1BURSTProduct(S1Product): """ @@ -77,4 +79,12 @@ def get_additional_filenames_and_urls(self, default_filename: str = None): else: file_name = '.'.join(default_filename.split('.')[:-1]) + 'xml' - return [(file_name, self.properties['additionalUrls'][0])] \ No newline at end of file + return [(file_name, self.properties['additionalUrls'][0])] + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return PRODUCT_TYPE.BURST + \ No newline at end of file diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index de99b756..9aa09a46 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,7 +1,9 @@ import copy +from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int from asf_search.constants import PLATFORM +from asf_search.constants import PRODUCT_TYPE class S1Product(ASFProduct): """ @@ -108,4 +110,10 @@ def valid_state_vectors(self) -> bool: if key not in self.baseline['stateVectors']['positions'] or self.baseline['stateVectors']['positions'][key] == None: return False return True - \ No newline at end of file + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return PRODUCT_TYPE.SLC \ No newline at end of file diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index e8050495..420d68a9 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -19,7 +19,7 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: assert find_new_reference(products).properties['sceneName'] == stack[output_index]['properties']['sceneName'] def run_test_get_default_product_type(product: ASFProduct, product_type: str) -> None: - assert product.properties['processingLevel'] == product_type + assert product.get_default_baseline_product_type() == product_type def run_test_get_baseline_from_stack(reference, stack, output_stack, error): reference = as_ASFProduct(reference, ASFSession()) diff --git a/tests/BaselineSearch/test_baseline_search.py b/tests/BaselineSearch/test_baseline_search.py index 99319a93..8a71b0a1 100644 --- a/tests/BaselineSearch/test_baseline_search.py +++ b/tests/BaselineSearch/test_baseline_search.py @@ -15,7 +15,7 @@ def run_test_get_preprocessed_stack_params(product): original_properties = product['properties'] - assert(params.processingLevel == [reference.properties['processingLevel']]) + assert(params.processingLevel == [reference.get_default_baseline_product_type()]) assert(params.insarStackId == original_properties['insarStackId']) assert(len(dict(params)) == 2) From 4b1623b105084992410af09c3b5c407396ce8502 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 10:00:32 -0900 Subject: [PATCH 51/95] changes method name and call in download(), adds _ --- asf_search/ASFProduct.py | 6 +++--- asf_search/Products/S1BURSTProduct.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 97cd01e4..af187738 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -146,17 +146,17 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, if fileType == FileDownloadType.DEFAULT_FILE: urls.append((default_filename, self.properties['url'])) elif fileType == FileDownloadType.ADDITIONAL_FILES: - urls.extend(self.get_additional_urls(default_filename)) + urls.extend(self._get_additional_filenames_and_urls(default_filename)) elif fileType == FileDownloadType.ALL_FILES: urls.append((default_filename, self.properties['url'])) - urls.extend(self.get_additional_urls(default_filename)) + urls.extend(self._get_additional_filenames_and_urls(default_filename)) else: raise ValueError("Invalid FileDownloadType provided, the valid types are 'DEFAULT_FILE', 'ADDITIONAL_FILES', and 'ALL_FILES'") for filename, url in urls: download_url(url=url, path=path, filename=filename, session=session) - def get_additional_filenames_and_urls(self, + def _get_additional_filenames_and_urls(self, default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) ): return [(os.path.split(parse.urlparse(url).path)[1], url) for url in self.properties['additionalUrls']] diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 15f84075..c00bf566 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -72,7 +72,7 @@ def _get_property_paths() -> dict: **S1BURSTProduct.base_properties } - def get_additional_filenames_and_urls(self, default_filename: str = None): + def _get_additional_filenames_and_urls(self, default_filename: str = None): # Burst XML filenames are just numbers, this makes it more indentifiable if file_name is None: file_name = '.'.join(self.properties['fileName'].split('.')[:-1]) + 'xml' From ca072adec566375bb2877188af006a016a3f25f8 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 10:13:02 -0900 Subject: [PATCH 52/95] Makes prefixes base_properties with _, removes from access method --- asf_search/ASFProduct.py | 20 ++++++++++---------- asf_search/Products/AIRSARProduct.py | 8 ++++---- asf_search/Products/ALOSProduct.py | 8 ++++---- asf_search/Products/ARIAS1GUNWProduct.py | 8 ++++---- asf_search/Products/ERSProduct.py | 8 ++++---- asf_search/Products/JERSProduct.py | 8 ++++---- asf_search/Products/OPERAS1Product.py | 8 ++++---- asf_search/Products/RadarsatProduct.py | 8 ++++---- asf_search/Products/S1BURSTProduct.py | 8 ++++---- asf_search/Products/S1Product.py | 8 ++++---- asf_search/Products/SEASATProduct.py | 8 ++++---- asf_search/Products/SIRCProduct.py | 8 ++++---- asf_search/Products/SMAPProduct.py | 8 ++++---- asf_search/Products/UAVSARProduct.py | 8 ++++---- 14 files changed, 62 insertions(+), 62 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index af187738..2ef53dbf 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -55,7 +55,7 @@ class BaselineCalcType(Enum): baseline_type = BaselineCalcType.NONE - base_properties = { + _base_properties = { # min viable product 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': try_parse_float}, 'centerLon': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0], 'cast': try_parse_float}, @@ -81,16 +81,16 @@ class BaselineCalcType(Enum): 'sensor': {'path': [ 'Platforms', 0, 'Instruments', 0, 'ShortName'], }, } """ - base_properties dictionary, mapping readable property names to paths and optional type casting + _base_properties dictionary, mapping readable property names to paths and optional type casting entries are organized as such: - `PROPERTY_NAME`: The name the property should be called in `ASFProduct.properties` - `path`: the expected path in the CMR UMM json granule response as a list - `cast`: (optional): the optional type casting method - Defining `base_properties` in subclasses allows for defining custom properties or overiding existing ones. - See `S1Product._get_property_paths()` on how subclasses are expected to - combine `ASFProduct.base_properties` with their own separately defined `base_properties` + Defining `_base_properties` in subclasses allows for defining custom properties or overiding existing ones. + See `S1Product.get_property_paths()` on how subclasses are expected to + combine `ASFProduct._base_properties` with their own separately defined `_base_properties` """ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -225,7 +225,7 @@ def translate_product(self, item: dict) -> dict: properties = { prop: umm_entry['cast'](umm_get(umm, *umm_entry['path'])) if umm_entry.get('cast') is not None else umm_get(umm, *umm_entry['path']) - for prop, umm_entry in self._get_property_paths().items() + for prop, umm_entry in self.get_property_paths().items() } if properties.get('url') is not None: @@ -244,16 +244,16 @@ def translate_product(self, item: dict) -> dict: # ASFProduct subclasses define extra/override param key + UMM pathing here @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: """ - Returns base_properties of class, subclasses such as `S1Product` (or user provided subclasses) can override this to + Returns _base_properties of class, subclasses such as `S1Product` (or user provided subclasses) can override this to define which properties they want in their subclass's properties dict. - (See `S1Product._get_property_paths()` for example of combining base_properties of multiple classes) + (See `S1Product.get_property_paths()` for example of combining _base_properties of multiple classes) :returns dictionary, {`PROPERTY_NAME`: {'path': [umm, path, to, value], 'cast (optional)': Callable_to_cast_value}, ...} """ - return ASFProduct.base_properties + return ASFProduct._base_properties def get_baseline_calc_properties(self) -> dict: """ diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index bc0cff92..cf54e4e8 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -6,7 +6,7 @@ class AIRSARProduct(ASFProduct): """ ASF Dataset Overview Page: https://asf.alaska.edu/data-sets/sar-data-sets/airsar/ """ - base_properties = { + _base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, @@ -18,8 +18,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **AIRSARProduct.base_properties + **ASFProduct.get_property_paths(), + **AIRSARProduct._base_properties } diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index d343d197..8d6fea2d 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -11,7 +11,7 @@ class ALOSProduct(ASFProduct): ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/alos-palsar/ """ - base_properties = { + _base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, @@ -47,10 +47,10 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **ALOSProduct.base_properties + **ASFProduct.get_property_paths(), + **ALOSProduct._base_properties } def is_valid_reference(self): diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 4819e285..1888d8e3 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -7,7 +7,7 @@ class ARIAS1GUNWProduct(S1Product): ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/derived-data-sets/sentinel-1-interferograms/ """ - base_properties = { + _base_properties = { 'perpendicularBaseline': {'path': ['AdditionalAttributes', ('Name', 'PERPENDICULAR_BASELINE'), 'Values', 0], 'cast': try_parse_float}, 'orbit': {'path': ['OrbitCalculatedSpatialDomains']} } @@ -23,9 +23,9 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties['additionalUrls'] = [urls[1]] @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **S1Product._get_property_paths(), - **ARIAS1GUNWProduct.base_properties + **S1Product.get_property_paths(), + **ARIAS1GUNWProduct._base_properties } diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index d03dc9a4..983705f6 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -12,7 +12,7 @@ class ERSProduct(ASFProduct): ASF ERS-1 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-1/ ASF ERS-2 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-2/ """ - base_properties = { + _base_properties = { 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0]}, 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0]}, @@ -48,10 +48,10 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **ERSProduct.base_properties + **ASFProduct.get_property_paths(), + **ERSProduct._base_properties } def is_valid_reference(self): diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 43b3d26f..3c6173b0 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -9,7 +9,7 @@ class JERSProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/jers-1/ """ - base_properties = { + _base_properties = { 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, @@ -35,10 +35,10 @@ def get_baseline_calc_properties(self) -> dict: return None @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **JERSProduct.base_properties + **ASFProduct.get_property_paths(), + **JERSProduct._base_properties } def get_stack_opts(self, opts: ASFSearchOptions = None): diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 8477bdb1..fc3c8dc8 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -6,7 +6,7 @@ class OPERAS1Product(S1Product): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/opera/ """ - base_properties = { + _base_properties = { 'centerLat': {'path': []}, # Opera products lacks these fields 'centerLon': {'path': []}, 'frameNumber': {'path': []}, @@ -50,10 +50,10 @@ def get_stack_opts(self, opts: ASFSearchOptions = ASFSearchOptions()) -> ASFSear return opts @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **S1Product._get_property_paths(), - **OPERAS1Product.base_properties + **S1Product.get_property_paths(), + **OPERAS1Product._base_properties } def is_valid_reference(self): diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 3fc9a333..58eeadb1 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -9,7 +9,7 @@ class RadarsatProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/radarsat-1/ """ - base_properties = { + _base_properties = { 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, @@ -46,10 +46,10 @@ def get_stack_opts(self, raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **RadarsatProduct.base_properties + **ASFProduct.get_property_paths(), + **RadarsatProduct._base_properties } def is_valid_reference(self): diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index c00bf566..1ff907a9 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -16,7 +16,7 @@ class S1BURSTProduct(S1Product): ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/data-sets/derived-data-sets/sentinel-1-bursts/ """ - base_properties = { + _base_properties = { 'bytes': {'path': ['AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0]}, 'absoluteBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0], 'cast': try_parse_int}, 'relativeBurstID': {'path': ['AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0], 'cast': try_parse_int}, @@ -66,10 +66,10 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): return stack_opts @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **S1Product._get_property_paths(), - **S1BURSTProduct.base_properties + **S1Product.get_property_paths(), + **S1BURSTProduct._base_properties } def _get_additional_filenames_and_urls(self, default_filename: str = None): diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 9aa09a46..fe8a374b 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -13,7 +13,7 @@ class S1Product(ASFProduct): ASF Dataset Overview Page: https://asf.alaska.edu/datasets/daac/sentinel-1/ """ - base_properties = { + _base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, @@ -95,10 +95,10 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: return stack_opts @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **S1Product.base_properties + **ASFProduct.get_property_paths(), + **S1Product._base_properties } def is_valid_reference(self) -> bool: diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index 6e1c7976..e6237ac4 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -5,7 +5,7 @@ class SEASATProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/sar-data-sets/seasat/ """ - base_properties = { + _base_properties = { 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, @@ -16,8 +16,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **SEASATProduct.base_properties + **ASFProduct.get_property_paths(), + **SEASATProduct._base_properties } diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index 79337c62..5796bb57 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -4,7 +4,7 @@ class SIRCProduct(ASFProduct): """ Dataset Documentation Page: https://eospso.nasa.gov/missions/spaceborne-imaging-radar-c """ - base_properties = { + _base_properties = { 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion'] }, @@ -15,8 +15,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **SIRCProduct.base_properties + **ASFProduct.get_property_paths(), + **SIRCProduct._base_properties } diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index d1036329..b711a416 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -6,7 +6,7 @@ class SMAPProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/sar-data-sets/soil-moisture-active-passive-smap-mission/ """ - base_properties = { + _base_properties = { 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, @@ -17,8 +17,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **SMAPProduct.base_properties + **ASFProduct.get_property_paths(), + **SMAPProduct._base_properties } diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index b6bb578a..b11a5629 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -6,7 +6,7 @@ class UAVSARProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/uavsar/ """ - base_properties = { + _base_properties = { 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, @@ -17,8 +17,8 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def _get_property_paths() -> dict: + def get_property_paths() -> dict: return { - **ASFProduct._get_property_paths(), - **UAVSARProduct.base_properties + **ASFProduct.get_property_paths(), + **UAVSARProduct._base_properties } From 6397226c5d646b2aaad3ab065b42f9b38c9e4d6b Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 12:43:57 -0900 Subject: [PATCH 53/95] moves get() from translate.py to ASFProduct class as static method --- asf_search/ASFProduct.py | 126 +++++++++++- asf_search/CMR/__init__.py | 2 +- asf_search/CMR/translate.py | 251 +---------------------- asf_search/Products/ALOSProduct.py | 4 +- asf_search/Products/ARIAS1GUNWProduct.py | 4 +- asf_search/Products/ERSProduct.py | 4 +- asf_search/Products/JERSProduct.py | 4 +- asf_search/Products/OPERAS1Product.py | 15 +- asf_search/Products/RadarsatProduct.py | 4 +- asf_search/Products/S1BURSTProduct.py | 4 +- asf_search/Products/S1Product.py | 19 +- asf_search/export/csv.py | 3 +- asf_search/export/jsonlite.py | 9 +- asf_search/export/kml.py | 9 +- asf_search/search/search_generator.py | 7 +- tests/Search/test_search.py | 6 +- 16 files changed, 166 insertions(+), 305 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 2ef53dbf..f0043670 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,6 +1,7 @@ +from ast import List from enum import Enum import os -from typing import Tuple, Union +from typing import Tuple, Union, final import warnings from shapely.geometry import shape, Point, Polygon, mapping import json @@ -15,7 +16,6 @@ from asf_search.download.file_download_type import FileDownloadType from asf_search import ASF_LOGGER from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float -from asf_search.CMR.translate import get as umm_get class ASFProduct: """ @@ -224,7 +224,7 @@ def translate_product(self, item: dict) -> dict: umm = item.get('umm') properties = { - prop: umm_entry['cast'](umm_get(umm, *umm_entry['path'])) if umm_entry.get('cast') is not None else umm_get(umm, *umm_entry['path']) + prop: umm_entry['cast'](self.umm_get(umm, *umm_entry['path'])) if umm_entry.get('cast') is not None else self.umm_get(umm, *umm_entry['path']) for prop, umm_entry in self.get_property_paths().items() } @@ -235,10 +235,10 @@ def translate_product(self, item: dict) -> dict: # Fallbacks if properties.get('beamModeType') is None: - properties['beamModeType'] = umm_get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) + properties['beamModeType'] = self.umm_get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) if properties.get('platform') is None: - properties['platform'] = umm_get(umm, 'Platforms', 0, 'ShortName') + properties['platform'] = self.umm_get(umm, 'Platforms', 0, 'ShortName') return {'geometry': geometry, 'properties': properties, 'type': 'Feature'} @@ -278,4 +278,118 @@ def get_default_baseline_product_type() -> Union[str, None]: """ Returns the product type to search for when building a baseline stack. """ - return None \ No newline at end of file + return None + + @final + @staticmethod + def umm_get(item: dict, *args): + """ + Used to search for values in CMR UMM + + :param item: the umm dict returned from CMR + :param *args: the expected path to the value + + Example case: + "I want to grab the polarization from the granule umm" + ``` + item = { + 'AdditionalAttributes': [ + { + 'Name': 'POLARIZATION', + 'Values': ['VV', 'VH'] + }, + ... + ], + ... + } + ``` + + The path provided to *args would look like this: + ``` + 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0 + result: 'VV' + ``` + + - `'AdditionalAttributes'` acts like item['AdditionalAttributes'], which is a list of dictionaries + + - Since `AdditionalAttributes` is a LIST of dictionaries, we search for a dict with the key value pair, + `('Name', 'POLARIZATION')` + + - If found, we try to access that dictionary's `Values` key + - Since `Values` is a list, we can access the first index `0` (in this case, 'VV') + + --- + + If you want more of the umm, simply reduce how deep you search: + Example: "I need BOTH polarizations (`OPERAS1Product` does this, noticed the omitted `0`) + + ``` + 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values' + result: ['VV', 'VH'] + ``` + + --- + + Example: "I need the ENTIRE POLARIZATION dict" + + ``` + 'AdditionalAttributes', ('Name', 'POLARIZATION') + result: { + 'Name': 'POLARIZATION', + 'Values': ['VV', 'VH'] + } + ``` + + --- + + ADVANCED: + Sometimes there are multiple dictionaries in a list that have the same key value pair we're searching for + (See `OPERAS1Product` umm under `RelatedUrls`). This means we can miss values since we're only grabbing the first match + depending on how the umm is organized. There is a way to get ALL data that matches our key value criteria. + + Example: "I need ALL `URL` values for dictionaries in `RelatedUrls` where `Type` is `GET DATA`" (See in use in `OPERAS1Product` class) + ``` + 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0 + ``` + """ + if item is None: + return None + for key in args: + if isinstance(key, int): + item = item[key] if key < len(item) else None + elif isinstance(key, tuple): + (a, b) = key + if isinstance(b, List): + output = [] + b = b[0] + for child in item: + if ASFProduct.umm_get(child, key[0]) == b[0]: + output.append(ASFProduct.get(child, b[1])) + if len(output): + return output + + return None + + found = False + for child in item: + if ASFProduct.umm_get(child, a) == b: + item = child + found = True + break + if not found: + return None + else: + item = item.get(key) + if item is None: + return None + if item in [None, 'NA', 'N/A', '']: + item = None + return item + + @final + @staticmethod + def umm_cast(f, v): + try: + return f(v) + except TypeError: + return None diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index b632410d..6eef7bc2 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -1,5 +1,5 @@ from .MissionList import get_campaigns from .subquery import build_subqueries -from .translate import translate_opts, get_additional_fields +from .translate import translate_opts from .field_map import field_map from .datasets import dataset_collections diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index 4752fe3d..bc0f8ca0 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -1,5 +1,5 @@ from datetime import datetime -from typing import Any, Dict, List +from typing import Any, Dict from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.constants import CMR_PAGE_SIZE import re @@ -144,255 +144,6 @@ def use_asf_frame(cmr_opts): return cmr_opts - -# def translate_product(item: dict) -> dict: -# try: -# coordinates = item['umm']['SpatialExtent']['HorizontalSpatialDomain']['Geometry']['GPolygons'][0]['Boundary']['Points'] -# coordinates = [[c['Longitude'], c['Latitude']] for c in coordinates] -# geometry = {'coordinates': [coordinates], 'type': 'Polygon'} -# except KeyError as e: -# geometry = {'coordinates': None, 'type': 'Polygon'} - -# umm = item.get('umm') - -# properties = { -# 'beamModeType': get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0), -# 'browse': get(umm, 'RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])), -# 'bytes': cast(int, try_round_float(get(umm, 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0))), -# 'centerLat': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0)), -# 'centerLon': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_LON'), 'Values', 0)), -# 'faradayRotation': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0)), -# 'fileID': get(umm, 'GranuleUR'), -# 'flightDirection': get(umm, 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0), -# 'groupID': get(umm, 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0), -# 'granuleType': get(umm, 'AdditionalAttributes', ('Name', 'GRANULE_TYPE'), 'Values', 0), -# 'insarStackId': get(umm, 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0), -# 'md5sum': get(umm, 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0), -# 'offNadirAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0)), -# 'orbit': cast(int, get(umm, 'OrbitCalculatedSpatialDomains', 0, 'OrbitNumber')), -# 'pathNumber': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0)), -# 'platform': get(umm, 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0), -# 'pointingAngle': cast(float, get(umm, 'AdditionalAttributes', ('Name', 'POINTING_ANGLE'), 'Values', 0)), -# 'polarization': get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0), -# 'processingDate': get(umm, 'DataGranule', 'ProductionDateTime'), -# 'processingLevel': get(umm, 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0), -# 'sceneName': get(umm, 'DataGranule', 'Identifiers', ('IdentifierType', 'ProducerGranuleId'), 'Identifier'), -# 'sensor': get(umm, 'Platforms', 0, 'Instruments', 0, 'ShortName'), -# 'startTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime'), -# 'stopTime': get(umm, 'TemporalExtent', 'RangeDateTime', 'EndingDateTime'), -# 'url': get(umm, 'RelatedUrls', ('Type', 'GET DATA'), 'URL'), -# 'pgeVersion': get(umm, 'PGEVersionClass', 'PGEVersion') -# } - -# if properties['beamModeType'] is None: -# properties['beamModeType'] = get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - -# positions = {} -# velocities = {} -# positions['prePosition'], positions['prePositionTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) -# positions['postPosition'], positions['postPositionTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) -# velocities['preVelocity'], velocities['preVelocityTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) -# velocities['postVelocity'], velocities['postVelocityTime'] = cast(get_state_vector, get(umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) -# ascendingNodeTime = get(umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) - -# for key in ['prePositionTime','postPositionTime','preVelocityTime','postVelocityTime']: -# if positions.get(key) is not None: -# if not positions.get(key).endswith('Z'): -# positions[key] += 'Z' - -# if ascendingNodeTime is not None: -# if not ascendingNodeTime.endswith('Z'): -# ascendingNodeTime += 'Z' - -# stateVectors = { -# 'positions': positions, -# 'velocities': velocities -# } - -# insarBaseline = cast(float, get(umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - -# baseline = {} -# if None not in stateVectors['positions'].values() and len(stateVectors.items()) > 0: -# baseline['stateVectors'] = stateVectors -# baseline['ascendingNodeTime'] = ascendingNodeTime -# elif insarBaseline is not None: -# baseline['insarBaseline'] = insarBaseline -# else: -# baseline = None - -# if properties['url'] is not None: -# properties['fileName'] = properties['url'].split('/')[-1] -# else: -# properties['fileName'] = None - -# if properties['platform'] is None: -# properties['platform'] = get(umm, 'Platforms', 0, 'ShortName') - -# asf_frame_platforms = ['Sentinel-1A', 'Sentinel-1B', 'ALOS', 'SENTINEL-1A', 'SENTINEL-1B', 'Sentinel-1 Interferogram', 'Sentinel-1 Interferogram (BETA)', 'ERS-1', 'ERS-2', 'JERS-1', 'RADARSAT-1'] -# if properties['platform'] in asf_frame_platforms: -# properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0)) -# else: -# properties['frameNumber'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0)) - -# if properties['processingLevel'] == 'BURST': -# burst = { -# 'absoluteBurstID': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_ABSOLUTE'), 'Values', 0)), -# 'relativeBurstID': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_RELATIVE'), 'Values', 0)), -# 'fullBurstID': get(umm, 'AdditionalAttributes', ('Name', 'BURST_ID_FULL'), 'Values', 0), -# 'burstIndex': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BURST_INDEX'), 'Values', 0)), -# 'samplesPerBurst': cast(int, get(umm, 'AdditionalAttributes', ('Name', 'SAMPLES_PER_BURST'), 'Values', 0)), -# 'subswath': get(umm, 'AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0), -# 'azimuthTime': get(umm, 'AdditionalAttributes', ('Name', 'AZIMUTH_TIME'), 'Values', 0), -# 'azimuthAnxTime': get(umm, 'AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0), -# } -# properties['burst'] = burst -# properties['sceneName'] = properties['fileID'] -# properties['bytes'] = cast(int, get(umm, 'AdditionalAttributes', ('Name', 'BYTE_LENGTH'), 'Values', 0)) - -# urls = get(umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) -# if urls is not None: -# properties['url'] = urls[0] -# properties['fileName'] = properties['fileID'] + '.' + urls[0].split('.')[-1] -# properties['additionalUrls'] = [urls[1]] - - -# if (fileID:=properties.get('fileID')): -# if fileID.startswith('OPERA'): -# properties['beamMode'] = get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) -# accessUrls = [*get(umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *get(umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] -# properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') -# and not url.startswith('s3://') -# and not 's3credentials' in url -# and not url.endswith('.png') -# and url != properties['url']]) -# properties['polarization'] = get(umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') - -# properties['operaBurstID'] = get(umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) - -# return {'geometry': geometry, 'properties': properties, 'type': 'Feature', 'baseline': baseline} - -def get_additional_fields(umm, *field_path): - return get(umm, *field_path) - -def cast(f, v): - try: - return f(v) - except TypeError: - return None - - -def get(item: dict, *args): - """ - Used to search for values in CMR UMM - - :param item: the umm dict returned from CMR - :param *args: the expected path to the value - - Example case: - "I want to grab the polarization from the granule umm" - ``` - item = { - 'AdditionalAttributes': [ - { - 'Name': 'POLARIZATION', - 'Values': ['VV', 'VH'] - }, - ... - ], - ... - } - ``` - - The path provided to *args would look like this: - ``` - 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values', 0 - result: 'VV' - ``` - - - `'AdditionalAttributes'` acts like item['AdditionalAttributes'], which is a list of dictionaries - - - Since `AdditionalAttributes` is a LIST of dictionaries, we search for a dict with the key value pair, - `('Name', 'POLARIZATION')` - - - If found, we try to access that dictionary's `Values` key - - Since `Values` is a list, we can access the first index `0` (in this case, 'VV') - - --- - - If you want more of the umm, simply reduce how deep you search: - Example: "I need BOTH polarizations (`OPERAS1Product` does this, noticed the omitted `0`) - - ``` - 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values' - result: ['VV', 'VH'] - ``` - - --- - - Example: "I need the ENTIRE POLARIZATION dict" - - ``` - 'AdditionalAttributes', ('Name', 'POLARIZATION') - result: { - 'Name': 'POLARIZATION', - 'Values': ['VV', 'VH'] - } - ``` - - --- - - ADVANCED: - Sometimes there are multiple dictionaries in a list that have the same key value pair we're searching for - (See `OPERAS1Product` umm under `RelatedUrls`). This means we can miss values since we're only grabbing the first match - depending on how the umm is organized. There is a way to get ALL data that matches our key value criteria. - - Example: "I need ALL `URL` values for dictionaries in `RelatedUrls` where `Type` is `GET DATA`" (See in use in `OPERAS1Product` class) - ``` - 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0 - ``` - """ - if item is None: - return None - for key in args: - if isinstance(key, int): - item = item[key] if key < len(item) else None - elif isinstance(key, tuple): - (a, b) = key - if isinstance(b, List): - output = [] - b = b[0] - for child in item: - if get(child, key[0]) == b[0]: - output.append(get(child, b[1])) - if len(output): - return output - - return None - - found = False - for child in item: - if get(child, a) == b: - item = child - found = True - break - if not found: - return None - else: - item = item.get(key) - if item is None: - return None - if item in [None, 'NA', 'N/A', '']: - item = None - return item - - -def get_state_vector(state_vector: str): - if state_vector is None: - return None, None - - return list(map(float, state_vector.split(',')[:3])), state_vector.split(',')[-1] - - # some products don't have integer values in BYTES fields, round to nearest int def try_round_float(value: str): if value is not None: diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 8d6fea2d..663a84c4 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,7 +1,7 @@ import copy from typing import Union from asf_search import ASFSession, ASFProduct, ASFSearchOptions -from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_parse_int, try_round_float +from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError @@ -29,7 +29,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties['groupID'] = self.properties['sceneName'] def get_baseline_calc_properties(self) -> dict: - insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: return { diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 1888d8e3..04338293 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -1,6 +1,6 @@ from asf_search import ASFSession from asf_search.Products import S1Product -from asf_search.CMR.translate import get, try_parse_float +from asf_search.CMR.translate import try_parse_float class ARIAS1GUNWProduct(S1Product): """ Used for ARIA S1 GUNW Products @@ -16,7 +16,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.properties['orbit'] = [orbit['OrbitNumber'] for orbit in self.properties['orbit']] - urls = get(self.umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) + urls = self.umm_get(self.umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) if urls is not None: self.properties['url'] = urls[0] self.properties['fileName'] = self.properties['fileID'] + '.' + urls[0].split('.')[-1] diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 983705f6..227ee70b 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,7 +1,7 @@ import copy from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float, try_round_float +from asf_search.CMR.translate import try_parse_float, try_round_float from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError @@ -29,7 +29,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = self.get_baseline_calc_properties() def get_baseline_calc_properties(self) -> dict: - insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: return { diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 3c6173b0..ad036f2b 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,7 +1,7 @@ import copy from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float +from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError @@ -25,7 +25,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = self.get_baseline_calc_properties() def get_baseline_calc_properties(self) -> dict: - insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: return { diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index fc3c8dc8..7d5df421 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -1,5 +1,4 @@ from asf_search import ASFSearchOptions, ASFSession -from asf_search.CMR.translate import get as umm_get from asf_search.Products import S1Product class OPERAS1Product(S1Product): @@ -21,16 +20,16 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = None - self.properties['beamMode'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - accessUrls = [*umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] + self.properties['beamMode'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) + accessUrls = [*self.umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *self.umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] self.properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') and not url.startswith('s3://') and not 's3credentials' in url and not url.endswith('.png') and url != self.properties['url']]) - self.properties['polarization'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') + self.properties['polarization'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') - self.properties['operaBurstID'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) + self.properties['operaBurstID'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) self.properties['bytes'] = {entry['Name']: {'bytes': entry['SizeInBytes'], 'format': entry['Format']} for entry in self.properties['bytes']} center = self.centroid() @@ -40,10 +39,10 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties.pop('frameNumber') if (processingLevel := self.properties['processingLevel']) in ['RTC', 'RTC-STATIC']: - self.properties['bistaticDelayCorrection'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BISTATIC_DELAY_CORRECTION'), 'Values', 0) + self.properties['bistaticDelayCorrection'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BISTATIC_DELAY_CORRECTION'), 'Values', 0) if processingLevel == 'RTC': - self.properties['noiseCorrection'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'NOISE_CORRECTION'), 'Values', 0) - self.properties['postProcessingFilter'] = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POST_PROCESSING_FILTER'), 'Values', 0) + self.properties['noiseCorrection'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'NOISE_CORRECTION'), 'Values', 0) + self.properties['postProcessingFilter'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POST_PROCESSING_FILTER'), 'Values', 0) def get_stack_opts(self, opts: ASFSearchOptions = ASFSearchOptions()) -> ASFSearchOptions: diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 58eeadb1..9b2ded7e 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,7 +1,7 @@ import copy from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get as umm_get, cast as umm_cast, try_parse_float +from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError @@ -24,7 +24,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = self.get_baseline_calc_properties() def get_baseline_calc_properties(self) -> dict: - insarBaseline = umm_cast(float, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: return { diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 1ff907a9..8cef81c8 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -2,7 +2,7 @@ from typing import Union from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product -from asf_search.CMR.translate import get, try_parse_int +from asf_search.CMR.translate import try_parse_int from asf_search.constants import PRODUCT_TYPE class S1BURSTProduct(S1Product): @@ -45,7 +45,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): 'azimuthAnxTime': self.properties.pop('azimuthAnxTime') } - urls = get(self.umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) + urls = self.umm_get(self.umm, 'RelatedUrls', ('Type', [('USE SERVICE API', 'URL')]), 0) if urls is not None: self.properties['url'] = urls[0] self.properties['fileName'] = self.properties['fileID'] + '.' + urls[0].split('.')[-1] diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index fe8a374b..1211e54c 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,7 +1,7 @@ import copy from typing import Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import get_state_vector, get as umm_get, cast as umm_cast, try_parse_int +from asf_search.CMR.translate import try_parse_int from asf_search.constants import PLATFORM from asf_search.constants import PRODUCT_TYPE @@ -41,7 +41,7 @@ def get_baseline_calc_properties(self) -> dict: """ :returns properties required for SLC baseline stack calculations """ - ascendingNodeTime = umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) + ascendingNodeTime = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) if ascendingNodeTime is not None: if not ascendingNodeTime.endswith('Z'): @@ -60,10 +60,10 @@ def get_state_vectors(self) -> dict: positions = {} velocities = {} - positions['prePosition'], positions['prePositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) - positions['postPosition'], positions['postPositionTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) - velocities['preVelocity'], velocities['preVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) - velocities['postVelocity'], velocities['postVelocityTime'] = umm_cast(get_state_vector, umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) + positions['prePosition'], positions['prePositionTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) + positions['postPosition'], positions['postPositionTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) + velocities['preVelocity'], velocities['preVelocityTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) + velocities['postVelocity'], velocities['postVelocityTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) for key in ['prePositionTime','postPositionTime','preVelocityTime','postVelocityTime']: if positions.get(key) is not None: @@ -75,6 +75,13 @@ def get_state_vectors(self) -> dict: 'velocities': velocities } + @staticmethod + def _get_state_vector(state_vector: str): + if state_vector is None: + return None, None + + return list(map(float, state_vector.split(',')[:3])), state_vector.split(',')[-1] + def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ Returns the search options asf-search will use internally to build an SLC baseline stack from diff --git a/asf_search/export/csv.py b/asf_search/export/csv.py index c7283cc1..8a86d19a 100644 --- a/asf_search/export/csv.py +++ b/asf_search/export/csv.py @@ -1,7 +1,6 @@ import csv from types import GeneratorType from asf_search import ASF_LOGGER -from asf_search.CMR.translate import get_additional_fields from asf_search.export.export_translators import ASFSearchResults_to_properties_list import inspect @@ -92,7 +91,7 @@ def get_additional_output_fields(self, product): additional_fields = {} for key, path in extra_csv_fields: - additional_fields[key] = get_additional_fields(umm, *path) + additional_fields[key] = product.umm_get(product.umm, *path) return additional_fields diff --git a/asf_search/export/jsonlite.py b/asf_search/export/jsonlite.py index 33583bcc..e150bef0 100644 --- a/asf_search/export/jsonlite.py +++ b/asf_search/export/jsonlite.py @@ -5,7 +5,6 @@ from shapely.geometry import shape from shapely.ops import transform -from asf_search.CMR.translate import get_additional_fields from asf_search import ASF_LOGGER from asf_search.export.export_translators import ASFSearchResults_to_properties_list @@ -61,18 +60,18 @@ def __len__(self): return self.len def get_additional_output_fields(self, product): - umm = product.umm + # umm = product.umm additional_fields = {} for key, path in extra_jsonlite_fields: - additional_fields[key] = get_additional_fields(umm, *path) + additional_fields[key] = product.umm_get(product.umm, *path) if product.properties['platform'].upper() in ['ALOS', 'RADARSAT-1', 'JERS-1', 'ERS-1', 'ERS-2']: - insarGrouping = get_additional_fields(umm, *['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]) + insarGrouping = product.umm_get(product.umm, *['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]) if insarGrouping not in [None, 0, '0', 'NA', 'NULL']: additional_fields['canInsar'] = True - additional_fields['insarStackSize'] = get_additional_fields(umm, *['AdditionalAttributes', ('Name', 'INSAR_STACK_SIZE'), 'Values', 0]) + additional_fields['insarStackSize'] = product.umm_get(product.umm, *['AdditionalAttributes', ('Name', 'INSAR_STACK_SIZE'), 'Values', 0]) else: additional_fields['canInsar'] = False else: diff --git a/asf_search/export/kml.py b/asf_search/export/kml.py index c93c017f..92f68a1f 100644 --- a/asf_search/export/kml.py +++ b/asf_search/export/kml.py @@ -1,7 +1,6 @@ import inspect from types import GeneratorType from asf_search import ASF_LOGGER -from asf_search.CMR import get_additional_fields from asf_search.export.metalink import MetalinkStreamArray import xml.etree.ElementTree as ETree @@ -41,13 +40,7 @@ def __init__(self, results): \n """ self.footer = """\n""" - - def get_additional_fields(self, product): - umm = product.umm - additional_fields = {} - for key, path in extra_kml_fields: - additional_fields[key] = get_additional_fields(umm, *path) - return additional_fields + def getOutputType(self) -> str: return 'kml' diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index f999f4e1..1d4b7040 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -13,7 +13,6 @@ from asf_search.ASFSearchResults import ASFSearchResults from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.CMR import build_subqueries, translate_opts -from asf_search.CMR.translate import get as umm_get from asf_search.CMR.datasets import dataset_collections from asf_search.ASFSession import ASFSession @@ -235,13 +234,13 @@ def set_platform_alias(opts: ASFSearchOptions): opts.platform = list(set(platform_list)) def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: - shortName = umm_get(item['umm'], 'CollectionReference', 'ShortName') + shortName = ASFProduct.umm_get(item['umm'], 'CollectionReference', 'ShortName') # ALOS if shortName is None: - shortName = umm_get(item['umm'], 'Platforms', 0, 'ShortName') + shortName = ASFProduct.umm_get(item['umm'], 'Platforms', 0, 'ShortName') if shortName == 'SENTINEL-1A': - if 'Sentinel-1 Interferogram' in umm_get(item['umm'], 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0): + if 'Sentinel-1 Interferogram' in ASFProduct.umm_get(item['umm'], 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0): shortName = 'ARIA S1 GUNW' # print(shortName) diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index 8646c9dc..b11e2260 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -1,7 +1,7 @@ from numbers import Number -from asf_search import ASFSearchOptions +from asf_search import ASFProduct, ASFSearchOptions from asf_search import ASFSession -from asf_search.CMR.translate import get +# from asf_search.CMR.translate import get from asf_search.constants import INTERNAL from asf_search.exceptions import ASFSearchError from asf_search.search import search @@ -93,7 +93,7 @@ def run_test_dataset_search(datasets: List): response = search(dataset=dataset, maxResults=250) # Get collection shortName of all granules - shortNames = list(set([shortName for product in response if (shortName:=get(product.umm, 'CollectionReference', 'ShortName')) is not None])) + shortNames = list(set([shortName for product in response if (shortName:=ASFProduct.umm_get(product.umm, 'CollectionReference', 'ShortName')) is not None])) # and check that results are limited to the expected datasets by their shortname for shortName in shortNames: From dcf2177e89e3f2ba4b4563e2e83ec4681261d6bd Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 14:03:38 -0900 Subject: [PATCH 54/95] fixes possible None val in list comprehension, re-adds get_additional_fields to kml.py --- asf_search/Products/OPERAS1Product.py | 13 ++++++++++--- asf_search/export/kml.py | 7 +++++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 7d5df421..3da00c36 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -13,6 +13,7 @@ class OPERAS1Product(S1Product): 'validityStartDate': {'path': ['TemporalExtent', 'SingleDateTime']}, 'bytes': {'path': ['DataGranule', 'ArchiveAndDistributionInformation']}, 'subswath': {'path': ['AdditionalAttributes', ('Name', 'SUBSWATH_NAME'), 'Values', 0]}, + 'polarization': {'path': ['AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values']} # dual polarization is in list rather than a 'VV+VH' style format } def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): @@ -21,14 +22,20 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.baseline = None self.properties['beamMode'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - accessUrls = [*self.umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0), *self.umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0)] + + accessUrls = [] + + if related_data_urls := self.umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0): + accessUrls.extend(related_data_urls) + if related_metadata_urls := self.umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0): + accessUrls.extend(related_metadata_urls) + self.properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') and not url.startswith('s3://') and not 's3credentials' in url and not url.endswith('.png') and url != self.properties['url']]) - self.properties['polarization'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values') - + self.properties['operaBurstID'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) self.properties['bytes'] = {entry['Name']: {'bytes': entry['SizeInBytes'], 'format': entry['Format']} for entry in self.properties['bytes']} diff --git a/asf_search/export/kml.py b/asf_search/export/kml.py index 92f68a1f..34e25681 100644 --- a/asf_search/export/kml.py +++ b/asf_search/export/kml.py @@ -45,6 +45,13 @@ def __init__(self, results): def getOutputType(self) -> str: return 'kml' + def get_additional_fields(self, product): + umm = product.umm + additional_fields = {} + for key, path in extra_kml_fields: + additional_fields[key] = product.umm_get(umm, *path) + return additional_fields + def getItem(self, p): placemark = ETree.Element("Placemark") name = ETree.Element('name') From 7b5d87181291a86b3f8c76b0179ec511647db806 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 15:38:51 -0900 Subject: [PATCH 55/95] fixes typo from earler commit --- asf_search/ASFProduct.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index f0043670..978f6d09 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -364,7 +364,7 @@ def umm_get(item: dict, *args): b = b[0] for child in item: if ASFProduct.umm_get(child, key[0]) == b[0]: - output.append(ASFProduct.get(child, b[1])) + output.append(ASFProduct.umm_get(child, b[1])) if len(output): return output From 038239b68b14f1d513121b61aa1afe920c0b13f3 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 5 Jan 2024 16:33:16 -0900 Subject: [PATCH 56/95] Fixes List type importing source --- asf_search/ASFProduct.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 978f6d09..ffed58b8 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,7 +1,6 @@ -from ast import List from enum import Enum import os -from typing import Tuple, Union, final +from typing import Tuple, Union, List, final import warnings from shapely.geometry import shape, Point, Polygon, mapping import json From c799de55444e62201c6d7b2d6000196ef491258d Mon Sep 17 00:00:00 2001 From: kim Date: Mon, 8 Jan 2024 08:55:06 -0900 Subject: [PATCH 57/95] returns default product type method, changes name --- asf_search/ASFProduct.py | 16 ++++++++++------ asf_search/Products/ALOSProduct.py | 2 +- asf_search/Products/ERSProduct.py | 2 +- asf_search/Products/JERSProduct.py | 2 +- asf_search/Products/RadarsatProduct.py | 2 +- asf_search/Products/S1BURSTProduct.py | 2 +- asf_search/Products/S1Product.py | 2 +- 7 files changed, 16 insertions(+), 12 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index ffed58b8..d590a569 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -13,7 +13,6 @@ from remotezip import RemoteZip from asf_search.download.file_download_type import FileDownloadType -from asf_search import ASF_LOGGER from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float class ASFProduct: @@ -45,12 +44,15 @@ def get_classname(cls): class BaselineCalcType(Enum): """ - ENUM to determine how asf-search will calculate perpendicular baseline - + Defines how asf-search will calculate perpendicular baseline for products of this subclass """ - NONE = 1 # isn't a calculated baseline product - PRE_CALCULATED = 2 # Has pre-calculated insarBaseline value - CALCULATED = 3 # Calculate at run-time + + NONE = 1 + """Cannot be used in baseline calculations""" + PRE_CALCULATED = 2 + """Has pre-calculated insarBaseline value that will be used for perpendicular calculations""" + CALCULATED = 3 + """Uses position/velocity state vectors and ascending node time for perpendicular calculations""" baseline_type = BaselineCalcType.NONE @@ -108,6 +110,7 @@ def __str__(self): return json.dumps(self.geojson(), indent=2, sort_keys=True) def geojson(self) -> dict: + """Returns ASFProduct object as a geojson formatted dictionary, with `type`, `geometry`, and `properties` keys""" return { 'type': 'Feature', 'geometry': self.geometry, @@ -388,6 +391,7 @@ def umm_get(item: dict, *args): @final @staticmethod def umm_cast(f, v): + """Tries to cast value v by callable f, returns None if it fails""" try: return f(v) except TypeError: diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 663a84c4..d92618e9 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -38,7 +38,7 @@ def get_baseline_calc_properties(self) -> dict: def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = 'L1.1' + stack_opts.processingLevel = self.get_default_baseline_product_type() if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 227ee70b..e13ef871 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -40,7 +40,7 @@ def get_baseline_calc_properties(self) -> dict: def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = 'L0' + stack_opts.processingLevel = self.get_default_baseline_product_type() if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index ad036f2b..57e4b8a1 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -45,7 +45,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = 'L0' + stack_opts.processingLevel = self.get_default_baseline_product_type() if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 9b2ded7e..62e68f34 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -37,7 +37,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = 'L0' + stack_opts.processingLevel = self.get_default_baseline_product_type() if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: stack_opts.insarStackId = self.properties['insarStackId'] diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 8cef81c8..7c24e4fe 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -60,7 +60,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): """ stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = 'BURST' + stack_opts.processingLevel = self.get_default_baseline_product_type() stack_opts.fullBurstID = self.properties['burst']['fullBurstID'] stack_opts.polarization = [self.properties['polarization']] return stack_opts diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 1211e54c..ee9d56c8 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -91,7 +91,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = 'SLC' + stack_opts.processingLevel = self.get_default_baseline_product_type() stack_opts.beamMode = [self.properties['beamModeType']] stack_opts.flightDirection = self.properties['flightDirection'] stack_opts.relativeOrbit = [int(self.properties['pathNumber'])] # path From d37db4ddd1c22afb7da9772e8b431b86e89ae5eb Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 9 Jan 2024 16:33:58 -0900 Subject: [PATCH 58/95] makes remotezip an optional dependency under "extras", raises warning when not installed and attempting to use remotezip methods --- .github/workflows/run-pytest.yml | 2 +- CHANGELOG.md | 5 +++++ asf_search/ASFProduct.py | 7 +++++-- asf_search/download/download.py | 18 ++++++++++++------ examples/5-Download.ipynb | 8 +++++++- setup.py | 10 +++++++--- 6 files changed, 37 insertions(+), 13 deletions(-) diff --git a/.github/workflows/run-pytest.yml b/.github/workflows/run-pytest.yml index f1a747e5..855336a6 100644 --- a/.github/workflows/run-pytest.yml +++ b/.github/workflows/run-pytest.yml @@ -11,7 +11,7 @@ jobs: - name: Install Dependencies run: | python3 -m pip install --upgrade pip - python3 -m pip install .[test] + python3 -m pip install .[extras,test] - name: Run Tests run: python3 -m pytest -n auto --cov=asf_search --cov-report=xml --dont-run-file test_known_bugs . diff --git a/CHANGELOG.md b/CHANGELOG.md index 48892828..173ca6a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,11 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - --> +------ +## [v7.0.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.3...v7.0.0) +### Changed +- `remotezip` is now an optional dependency, installable via `python3 -m pip install asf-search[extras]` + ------ ## [v6.7.3](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.2...v6.7.3) ### Added diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 3ceb4d02..b16b7503 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -9,7 +9,6 @@ from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.download import download_url from asf_search.CMR import translate_product -from remotezip import RemoteZip from asf_search.download.file_download_type import FileDownloadType from asf_search import ASF_LOGGER @@ -132,10 +131,14 @@ def centroid(self) -> Point: return Polygon(unwrapped_coords).centroid - def remotezip(self, session: ASFSession) -> RemoteZip: + def remotezip(self, session: ASFSession): """Returns a RemoteZip object which can be used to download a part of an ASFProduct's zip archive. (See example in examples/5-Download.ipynb) + requires installing optional dependencies to use the `remotezip` package: + + `python3 -m pip install asf-search[extras]` + :param session: an authenticated ASFSession """ from .download.download import remotezip diff --git a/asf_search/download/download.py b/asf_search/download/download.py index 3de9fae3..d75306c6 100644 --- a/asf_search/download/download.py +++ b/asf_search/download/download.py @@ -8,8 +8,7 @@ import regex as re from asf_search.exceptions import ASFAuthenticationError, ASFDownloadError -from asf_search import ASFSession -from remotezip import RemoteZip +from asf_search import ASF_LOGGER, ASFSession from tenacity import retry, stop_after_delay, retry_if_result, wait_fixed def _download_url(arg): @@ -74,14 +73,21 @@ def download_url(url: str, path: str, filename: str = None, session: ASFSession for chunk in response.iter_content(chunk_size=8192): f.write(chunk) -def remotezip(url: str, session: ASFSession) -> RemoteZip: +def remotezip(url: str, session: ASFSession): """ :param url: the url to the zip product :param session: the authenticated ASFSession to read and download from the zip file """ - - session.hooks['response'].append(strip_auth_if_aws) - return RemoteZip(url, session=session) + try: + import remotezip + except ImportError: + remotezip = None + + if remotezip is None: + ASF_LOGGER.warn("Could not find remotezip package in current python environment. \"remotezip\" is an optional dependency of asf-search required for the `remotezip()` method, and can be install via `python3 -m pip install asf-search[extras]`") + else: + session.hooks['response'].append(strip_auth_if_aws) + return remotezip.RemoteZip(url, session=session) def strip_auth_if_aws(r, *args, **kwargs): if 300 <= r.status_code <= 399 and 'amazonaws.com' in parse.urlparse(r.headers['location']).netloc: diff --git a/examples/5-Download.ipynb b/examples/5-Download.ipynb index fad67ddc..88a07f66 100644 --- a/examples/5-Download.ipynb +++ b/examples/5-Download.ipynb @@ -210,7 +210,13 @@ "id": "42506e17", "metadata": {}, "source": [ - "Some results may be stored as zip files. To download only part of a single `ASFProduct`'s zip, call its `remotezip()` method, passing in a previously-authenticated session. It should return a `RemoteZip` object, which provides functionality to download parts of the `ASFProduct`'s zip archive. Below is an example of using a `RemoteZip` object to download all .tiff files from a single product." + "Some results may be stored as zip files. To download only part of a single `ASFProduct`'s zip, call its `remotezip()` method, passing in a previously-authenticated session. It should return a `RemoteZip` object, which provides functionality to download parts of the `ASFProduct`'s zip archive. Below is an example of using a `RemoteZip` object to download all .tiff files from a single product.\n", + "\n", + "NOTE: the `remotezip()` method requires installing the asf-search module's extra dependencies, in particular the `remotezip` package. Extra dependencies can be installed via pip like so:\n", + "\n", + "``` bash\n", + "python3 -m pip install asf-search[extras]\n", + "```" ] }, { diff --git a/setup.py b/setup.py index cb519b73..d88008cf 100644 --- a/setup.py +++ b/setup.py @@ -9,7 +9,6 @@ "importlib_metadata", "numpy", "dateparser", - "remotezip >= 0.10.0", "tenacity == 8.2.2" ] @@ -22,9 +21,14 @@ "requests-mock", "nbformat", "nbconvert", - "ipykernel", + "ipykernel", ] +extra_requirements = [ + "remotezip>=0.10.0" +] + + with open("README.md", "r") as readme_file: readme = readme_file.read() @@ -45,7 +49,7 @@ include_package_data=True, python_requires='>=3.8', install_requires=requirements, - extras_require={ "test": test_requirements }, + extras_require={ "test": test_requirements, "extras": extra_requirements}, license='BSD', license_files=('LICENSE',), classifiers=[ From 239423dfc1cc0ce23bd23e00859c3b2977f56625 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 10 Jan 2024 11:26:51 -0900 Subject: [PATCH 59/95] adds test to assert results are similar between asf-search and searchAPI with aliased keyword searches (platform and processingLevel) --- tests/Search/test_search.py | 32 +- tests/pytest-config.yml | 5 + tests/pytest-managers.py | 11 +- tests/yml_tests/test_search.yml | 796 ++++++++++++++++++-------------- 4 files changed, 483 insertions(+), 361 deletions(-) diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index 20d12ff9..cd9fe548 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -1,5 +1,7 @@ from numbers import Number -from asf_search import ASFSearchOptions + +from tenacity import retry, retry_if_exception_type, stop_after_attempt +from asf_search import ASF_LOGGER, ASFSearchOptions from asf_search.ASFProduct import ASFProduct from asf_search.CMR.subquery import build_subqueries from asf_search.CMR.translate import get @@ -13,6 +15,9 @@ import requests import requests_mock +SEARCHAPI_URL = 'https://api.daac.asf.alaska.edu' +SEARCHAPI_ENDPOINT = '/services/search/param?' + def run_test_ASFSearchResults(search_resp): search_results = ASFSearchResults([ASFProduct(product) for product in search_resp]) @@ -99,3 +104,28 @@ def run_test_build_subqueries(params: ASFSearchOptions, expected: List): for a_param, b_param in zip(a, b): if isinstance(b_param, list): assert len(set(b_param).difference(set(a_param))) == 0 + +def run_test_keyword_aliasing_results(params: ASFSearchOptions): + module_response = search(opts=params) + + try: + api_response = query_endpoint(dict(params)) + except requests.ReadTimeout as exc: + ASF_LOGGER.warn(f'SearchAPI timed out, skipping test for params {str(params)}') + return + + api_results = api_response['results'] + + api_dict = {product['granuleName']: True for product in api_results} + + for product in module_response: + sceneName = product.properties['sceneName'] + assert api_dict.get(sceneName, False), f'Found unexpected scene in asf-search module results, {sceneName}\{dict(params)}' + + +@retry(stop=stop_after_attempt(3), retry=retry_if_exception_type(requests.HTTPError)) +def query_endpoint(params): + response = requests.post(url=SEARCHAPI_URL+SEARCHAPI_ENDPOINT, data={**params, 'output':'jsonlite'}) + response.raise_for_status() + + return response.json() \ No newline at end of file diff --git a/tests/pytest-config.yml b/tests/pytest-config.yml index 5975b615..83239562 100644 --- a/tests/pytest-config.yml +++ b/tests/pytest-config.yml @@ -199,6 +199,11 @@ test_types: required_keys: results method: test_output_format +- For running search-api keyword-collection aliasing tests: + required_in_title: test-aliasing-search-against-api + required_keys: params + method: test_keyword_aliasing_results + - For running dataset keyword tests: required_in_title: search-dataset required_keys: dataset diff --git a/tests/pytest-managers.py b/tests/pytest-managers.py index fd766d1d..5fa59b3e 100644 --- a/tests/pytest-managers.py +++ b/tests/pytest-managers.py @@ -7,7 +7,7 @@ from ASFSearchResults.test_ASFSearchResults import run_test_output_format, run_test_ASFSearchResults_intersection from ASFSession.test_ASFSession import run_auth_with_cookiejar, run_auth_with_creds, run_auth_with_token, run_test_asf_session_rebuild_auth from BaselineSearch.test_baseline_search import * -from Search.test_search import run_test_ASFSearchResults, run_test_build_subqueries, run_test_dataset_search, run_test_search, run_test_search_http_error +from Search.test_search import run_test_ASFSearchResults, run_test_build_subqueries, run_test_dataset_search, run_test_keyword_aliasing_results, run_test_search, run_test_search_http_error from Search.test_search_generator import run_test_search_generator, run_test_search_generator_multi from CMR.test_MissionList import run_test_get_project_names @@ -474,6 +474,15 @@ def test_output_format(**args) -> None: run_test_output_format(results) +def test_keyword_aliasing_results(**args) -> None: + test_info = args['test_info'] + + opts = ASFSearchOptions(**test_info['params']) + opts.maxResults = 250 + + run_test_keyword_aliasing_results(opts) + + # Finds and loads file from yml_tests/Resouces/ if loaded field ends with .yml/yaml extension def get_resource(yml_file): diff --git a/tests/yml_tests/test_search.yml b/tests/yml_tests/test_search.yml index 4d7844aa..d6556cfb 100644 --- a/tests/yml_tests/test_search.yml +++ b/tests/yml_tests/test_search.yml @@ -1,379 +1,457 @@ ---- # test data - -empty_parameters: &empty_parameters { - # 'host' : 'api.daac.asf.alaska.edu' -} - -alos_parameters: &alos_parameters { - "platform": "ALOS", - "maxResults": 3, -# 'host' : 'api.daac.asf.alaska.edu', -} - +empty_parameters: {} +alos_parameters: + platform: ALOS + maxResults: 3 tests: -- test-ASFSearch ALOS Resp 1: - response: Alos_response_maxResults3.yml + - test-ASFSearch ALOS Resp 1: + response: Alos_response_maxResults3.yml + - test-ASFSearch S1 Resp 1: + response: S1_baseline_stack.yml + - test-ASFSearch-search-valid Alos: + parameters: + platform: ALOS + maxResults: 3 + answer: Alos_response_maxResults3.yml + - test-ASFSearch-search-error 400-Error: + parameters: {} + status_code: 400 + report: 'Client Error: This is a Test Error' + - test-ASFSearch-search-error 400-Error non-empty-results: + parameters: + platform: Sentinel-1 + status_code: 400 + report: 'Client Error: This is a Test Error' + - test-ASFSearch-search-error 500-Error: + parameters: {} + status_code: 500 + report: 'Server Error: This is a Test Error' + - test-ASFSearch-search-error 500-Error non-empty-results: + parameters: + platform: Sentinel-1 + status_code: 500 + report: 'Server Error: This is a Test Error' + - test-search-dataset S1 Datasets: + dataset: + - SENTINEL-1 + - SLC-BURST + - OPERA-S1 + - test-search-dataset S1 Datasets and non-S1: + dataset: + - SENTINEL-1 + - SLC-BURST + - OPERA-S1 + - UAVSAR + - test-search-dataset fake dataset: + dataset: FAKE-DATASET-V1 + - test-search-dataset S1 Datasets and fake dataset: + dataset: + - SENTINEL-1 + - SLC-BURST + - OPERA-S1 + - FAKE-DATASET-V2 + - test-search-build_subquery S1-Platform: + params: + platform: + - SENTINEL-1A + - SENTINEL-1B + expected: + - collections: + - C1214470488-ASF + - C1214470533-ASF + - C1214470576-ASF + - C1595422627-ASF + - C1214470496-ASF + - C1214470532-ASF + - C1214472977-ASF + - C1214472336-ASF + - C1266376001-ASF + - C1214472994-ASF + - C1214470732-ASF + - C1214473170-ASF + - C1214470561-ASF + - C1214471521-ASF + - C1214470682-ASF + - C2777443834-ASF + - C2777436413-ASF + - C1214471197-ASF + - C1214471960-ASF + - C1214472978-ASF + - C1214473165-ASF + - C2709161906-ASF + - C1596065640-ASF + - C1596065639-ASF + - C1596065641-ASF + - C1595765183-ASF + - C2450786986-ASF + - C1205428742-ASF + - C1212201032-ASF + - C1212212560-ASF + - C1205264459-ASF + - C1208117434-ASF + - C1212209035-ASF + - C1212209226-ASF + - C1208115009-ASF + - C1212158327-ASF + - C1215704763-ASF + - C1225776654-ASF + - C1212158318-ASF + - C1212212493-ASF + - C1212158326-ASF + - C1212233976-ASF + - C1260726384-ASF + - C1258354200-ASF + - C1259982010-ASF + - C1260721945-ASF + - C1257995185-ASF + - C1259976861-ASF + - C1260726378-ASF + - C1258354201-ASF + - C1259981910-ASF + - C1260721853-ASF + - C1257995186-ASF + - C1259974840-ASF + - C1212200781-ASF + - C1212209075-ASF + - C1257024016-ASF + - C1225776655-ASF + - C1225776657-ASF + - C1225776658-ASF + - C1225776659-ASF + - C1245953394-ASF + - C1234413245-ASFDEV + - C1234413229-ASFDEV + - C1234413237-ASFDEV + - C1234413238-ASFDEV + - C1234413236-ASFDEV + - C1234413230-ASFDEV + - C1234413232-ASFDEV + - C1234413235-ASFDEV + - C1234413240-ASFDEV + - C1234413234-ASFDEV + - C1234413241-ASFDEV + - C1234413233-ASFDEV + - C1234413243-ASFDEV + - C1234413244-ASFDEV + - C1244552887-ASFDEV + - C1234413228-ASFDEV + - C1234413231-ASFDEV + - C1234413239-ASFDEV + - C1234413242-ASFDEV + - C1257175154-ASFDEV + - C1244598379-ASFDEV + - C1240784657-ASFDEV + - C1327985661-ASF + - C1327985645-ASF + - C1595422627-ASF + - C1327985617-ASF + - C1327985660-ASF + - C1327985741-ASF + - C1327985578-ASF + - C1327985646-ASF + - C1327985650-ASF + - C1327985579-ASF + - C1327985740-ASF + - C1327985619-ASF + - C1327985739-ASF + - C1327985647-ASF + - C2777443834-ASF + - C2777436413-ASF + - C1327985697-ASF + - C1327985651-ASF + - C1327985644-ASF + - C1327985571-ASF + - C1327985674-ASF + - C2709161906-ASF + - C1596065640-ASF + - C1596065639-ASF + - C1596065641-ASF + - C1595765183-ASF + - C2450786986-ASF + - C1216244348-ASF + - C1216244589-ASF + - C1216244594-ASF + - C1216244593-ASF + - C1216244585-ASF + - C1216244592-ASF + - C1216244595-ASF + - C1225776654-ASF + - C1216244590-ASF + - C1216244601-ASF + - C1216244600-ASF + - C1216244591-ASF + - C1216244587-ASF + - C1216244598-ASF + - C1216244586-ASF + - C1260726384-ASF + - C1258354200-ASF + - C1259982010-ASF + - C1260721945-ASF + - C1257995185-ASF + - C1259976861-ASF + - C1260726378-ASF + - C1258354201-ASF + - C1259981910-ASF + - C1260721853-ASF + - C1257995186-ASF + - C1259974840-ASF + - C1216244597-ASF + - C1216244596-ASF + - C1216244588-ASF + - C1216244599-ASF + - C1257024016-ASF + - C1225776655-ASF + - C1225776657-ASF + - C1225776658-ASF + - C1225776659-ASF + - C1245953394-ASF + - C1234413263-ASFDEV + - C1234413247-ASFDEV + - C1234413248-ASFDEV + - C1234413255-ASFDEV + - C1234413254-ASFDEV + - C1234413256-ASFDEV + - C1234413253-ASFDEV + - C1234413252-ASFDEV + - C1234413250-ASFDEV + - C1234413259-ASFDEV + - C1234413251-ASFDEV + - C1234413261-ASFDEV + - C1234413262-ASFDEV + - C1234413258-ASFDEV + - C1244552887-ASFDEV + - C1234413246-ASFDEV + - C1234413249-ASFDEV + - C1234413257-ASFDEV + - C1234413260-ASFDEV + - C1257175154-ASFDEV + - C1244598379-ASFDEV + - test-search-build_subquery S1-Platform SLC: + params: + platform: + - SENTINEL-1A + - SENTINEL-1B + processingLevel: + - SLC + expected: + - collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - test-search-build_subquery S1-Dataset SLC: + params: + dataset: + - SENTINEL-1 + processingLevel: + - SLC + expected: + - collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - test-search-build_subquery INTERFEROMETRY: + params: + processingLevel: + - INTERFEROMETRY + expected: + - collections: + - C1214336045-ASF + - C1212001698-ASF + - test-search-build_subquery INTERFEROMETRY & SLC Collection: + params: + processingLevel: + - INTERFEROMETRY + collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + expected: + - collections: + - C1214336045-ASF + - C1212001698-ASF + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - test-search-build_subquery INTERFEROMETRY & SLC Collection with duplicate INTERFEROMETRY collection: + params: + processingLevel: + - INTERFEROMETRY + collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - C1212001698-ASF + expected: + - collections: + - C1214336045-ASF + - C1212001698-ASF + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - test-search-build_subquery UNKNOWN_PROCESSING_TYPE: + params: + processingLevel: + - UNKNOWN_PROCESSING_TYPE + expected: + - {} + - test-search-build_subquery UNKNOWN_PROCESSING_TYPE with collections: + params: + processingLevel: + - UNKNOWN_PROCESSING_TYPE + collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - C1212001698-ASF + expected: + - collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - C1212001698-ASF + - test-search-build_subquery UNKNOWN_PROCESSING_TYPE with platform, SLC, & collection: + params: + platform: + - SENTINEL-1A + - SENTINEL-1B + - UAVSAR + processingLevel: + - UNKNOWN_PROCESSING_TYPE + - SLC + collections: + - C1212001698-ASF + expected: + - collections: + - C1214470488-ASF + - C1205428742-ASF + - C1234413245-ASFDEV + - C1327985661-ASF + - C1216244348-ASF + - C1234413263-ASFDEV + - C1212001698-ASF + + - test-aliasing-search-against-api SLC: + params: + processingLevel: SLC -- test-ASFSearch S1 Resp 1: - response: S1_baseline_stack.yml + - test-aliasing-search-against-api S1A SLC: + params: + platform: SENTINEL-1A + processingLevel: SLC -- test-ASFSearch-search-valid Alos: - parameters: *alos_parameters - answer: Alos_response_maxResults3.yml + - test-aliasing-search-against-api S1B SLC: + params: + platform: SENTINEL-1B + processingLevel: SLC -- test-ASFSearch-search-error 400-Error: - parameters: *empty_parameters - status_code: 400 - report: "Client Error: This is a Test Error" + - test-aliasing-search-against-api SIRC: + params: + platform: SIRC -- test-ASFSearch-search-error 400-Error non-empty-results: - parameters: - platform: "Sentinel-1" - status_code: 400 - report: "Client Error: This is a Test Error" + - test-aliasing-search-against-api SIRC SLC: + params: + platform: SIRC + processingLevel: SLC + + - test-aliasing-search-against-api ALOS: + params: + platform: ALOS -- test-ASFSearch-search-error 500-Error: - parameters: *empty_parameters - status_code: 500 - report: "Server Error: This is a Test Error" + - test-aliasing-search-against-api ALOS L1_0: + params: + platform: ALOS + processingLevel: L1_0 -- test-ASFSearch-search-error 500-Error non-empty-results: - parameters: - platform: "Sentinel-1" - status_code: 500 - report: "Server Error: This is a Test Error" + - test-aliasing-search-against-api ERS: + params: + platform: ERS -- test-search-dataset S1 Datasets: - dataset: ['SENTINEL-1', 'SLC-BURST', 'OPERA-S1'] + - test-aliasing-search-against-api ERS1 l0: + params: + platform: ERS1 + processingLevel: L0 -- test-search-dataset S1 Datasets and non-S1: - dataset: ['SENTINEL-1', 'SLC-BURST', 'OPERA-S1', 'UAVSAR'] + - test-aliasing-search-against-api ERS1 l0: + params: + platform: ERS1 -- test-search-dataset fake dataset: - dataset: 'FAKE-DATASET-V1' + - test-aliasing-search-against-api ERS2: + params: + platform: ERS2 -- test-search-dataset S1 Datasets and fake dataset: - dataset: ['SENTINEL-1', 'SLC-BURST', 'OPERA-S1', 'FAKE-DATASET-V2'] + - test-aliasing-search-against-api ERS2 l0: + params: + platform: ERS2 + processingLevel: L0 -- test-search-build_subquery S1-Platform: - params: - platform: ['SENTINEL-1A', 'SENTINEL-1B'] - expected: - [{ - collections: [ - "C1214470488-ASF", # S1A - "C1214470533-ASF", - "C1214470576-ASF", - "C1595422627-ASF", - "C1214470496-ASF", - "C1214470532-ASF", - "C1214472977-ASF", - "C1214472336-ASF", - "C1266376001-ASF", - "C1214472994-ASF", - "C1214470732-ASF", - "C1214473170-ASF", - "C1214470561-ASF", - "C1214471521-ASF", - "C1214470682-ASF", - "C2777443834-ASF", - "C2777436413-ASF", - "C1214471197-ASF", - "C1214471960-ASF", - "C1214472978-ASF", - "C1214473165-ASF", - "C2709161906-ASF", - "C1596065640-ASF", - "C1596065639-ASF", - "C1596065641-ASF", - "C1595765183-ASF", - "C2450786986-ASF", - "C1205428742-ASF", - "C1212201032-ASF", - "C1212212560-ASF", - "C1205264459-ASF", - "C1208117434-ASF", - "C1212209035-ASF", - "C1212209226-ASF", - "C1208115009-ASF", - "C1212158327-ASF", - "C1215704763-ASF", - "C1225776654-ASF", - "C1212158318-ASF", - "C1212212493-ASF", - "C1212158326-ASF", - "C1212233976-ASF", - "C1260726384-ASF", - "C1258354200-ASF", - "C1259982010-ASF", - "C1260721945-ASF", - "C1257995185-ASF", - "C1259976861-ASF", - "C1260726378-ASF", - "C1258354201-ASF", - "C1259981910-ASF", - "C1260721853-ASF", - "C1257995186-ASF", - "C1259974840-ASF", - "C1212200781-ASF", - "C1212209075-ASF", - "C1257024016-ASF", - "C1225776655-ASF", - "C1225776657-ASF", - "C1225776658-ASF", - "C1225776659-ASF", - "C1245953394-ASF", - "C1234413245-ASFDEV", - "C1234413229-ASFDEV", - "C1234413237-ASFDEV", - "C1234413238-ASFDEV", - "C1234413236-ASFDEV", - "C1234413230-ASFDEV", - "C1234413232-ASFDEV", - "C1234413235-ASFDEV", - "C1234413240-ASFDEV", - "C1234413234-ASFDEV", - "C1234413241-ASFDEV", - "C1234413233-ASFDEV", - "C1234413243-ASFDEV", - "C1234413244-ASFDEV", - "C1244552887-ASFDEV", - "C1234413228-ASFDEV", - "C1234413231-ASFDEV", - "C1234413239-ASFDEV", - "C1234413242-ASFDEV", - "C1257175154-ASFDEV", - "C1244598379-ASFDEV", - "C1240784657-ASFDEV", - "C1327985661-ASF", # S1B - "C1327985645-ASF", - "C1595422627-ASF", - "C1327985617-ASF", - "C1327985660-ASF", - "C1327985741-ASF", - "C1327985578-ASF", - "C1327985646-ASF", - "C1327985650-ASF", - "C1327985579-ASF", - "C1327985740-ASF", - "C1327985619-ASF", - "C1327985739-ASF", - "C1327985647-ASF", - "C2777443834-ASF", - "C2777436413-ASF", - "C1327985697-ASF", - "C1327985651-ASF", - "C1327985644-ASF", - "C1327985571-ASF", - "C1327985674-ASF", - "C2709161906-ASF", - "C1596065640-ASF", - "C1596065639-ASF", - "C1596065641-ASF", - "C1595765183-ASF", - "C2450786986-ASF", - "C1216244348-ASF", - "C1216244589-ASF", - "C1216244594-ASF", - "C1216244593-ASF", - "C1216244585-ASF", - "C1216244592-ASF", - "C1216244595-ASF", - "C1225776654-ASF", - "C1216244590-ASF", - "C1216244601-ASF", - "C1216244600-ASF", - "C1216244591-ASF", - "C1216244587-ASF", - "C1216244598-ASF", - "C1216244586-ASF", - "C1260726384-ASF", - "C1258354200-ASF", - "C1259982010-ASF", - "C1260721945-ASF", - "C1257995185-ASF", - "C1259976861-ASF", - "C1260726378-ASF", - "C1258354201-ASF", - "C1259981910-ASF", - "C1260721853-ASF", - "C1257995186-ASF", - "C1259974840-ASF", - "C1216244597-ASF", - "C1216244596-ASF", - "C1216244588-ASF", - "C1216244599-ASF", - "C1257024016-ASF", - "C1225776655-ASF", - "C1225776657-ASF", - "C1225776658-ASF", - "C1225776659-ASF", - "C1245953394-ASF", - "C1234413263-ASFDEV", - "C1234413247-ASFDEV", - "C1234413248-ASFDEV", - "C1234413255-ASFDEV", - "C1234413254-ASFDEV", - "C1234413256-ASFDEV", - "C1234413253-ASFDEV", - "C1234413252-ASFDEV", - "C1234413250-ASFDEV", - "C1234413259-ASFDEV", - "C1234413251-ASFDEV", - "C1234413261-ASFDEV", - "C1234413262-ASFDEV", - "C1234413258-ASFDEV", - "C1244552887-ASFDEV", - "C1234413246-ASFDEV", - "C1234413249-ASFDEV", - "C1234413257-ASFDEV", - "C1234413260-ASFDEV", - "C1257175154-ASFDEV", - "C1244598379-ASFDEV" - ] - }] + - test-aliasing-search-against-api JERS: + params: + platform: JERS -- test-search-build_subquery S1-Platform SLC: - params: - platform: ['SENTINEL-1A', 'SENTINEL-1B'] - processingLevel: ['SLC'] - expected: - [{ - collections: [ - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV" - ] - }] + - test-aliasing-search-against-api JERS l0: + params: + platform: JERS + processingLevel: L0 -- test-search-build_subquery S1-Dataset SLC: - params: - dataset: ['SENTINEL-1'] - processingLevel: ['SLC'] - expected: - [{ - collections: [ - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV" - ] - }] + - test-aliasing-search-against-api RADARSAT: + params: + platform: RADARSAT -- test-search-build_subquery INTERFEROMETRY: - params: - processingLevel: [INTERFEROMETRY] - expected: [{ - collections: [ - "C1214336045-ASF", "C1212001698-ASF" - ] - }] + - test-aliasing-search-against-api RADARSAT L0: + params: + platform: RADARSAT + processingLevel: L0 + + - test-aliasing-search-against-api AIRSAR: + params: + platform: AIRSAR -- test-search-build_subquery INTERFEROMETRY & SLC Collection: - params: - processingLevel: [INTERFEROMETRY] - collections: [ #S1 SLC collections - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV", - ] - expected: [{ - collections: [ - "C1214336045-ASF", - "C1212001698-ASF", - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV" - ] - }] + - test-aliasing-search-against-api AIRSAR LSTOKES: + params: + platform: AIRSAR + processingLevel: LSTOKES -- test-search-build_subquery INTERFEROMETRY & SLC Collection with duplicate INTERFEROMETRY collection: - params: - processingLevel: [INTERFEROMETRY] - collections: [ #S1 SLC collections - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV", - "C1212001698-ASF" # INTERFEROMETRY - ] - expected: [{ - collections: [ - "C1214336045-ASF", - "C1212001698-ASF", - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV" - ] - }] + - test-aliasing-search-against-api SEASAT: + params: + platform: SEASAT -- test-search-build_subquery UNKNOWN_PROCESSING_TYPE: - params: - processingLevel: ["UNKNOWN_PROCESSING_TYPE"] - # collections: [ - # ] - expected: [{ - # collections: [ - # ] - }] + - test-aliasing-search-against-api SMAP: + params: + platform: SMAP -- test-search-build_subquery UNKNOWN_PROCESSING_TYPE with collections: - params: - processingLevel: ["UNKNOWN_PROCESSING_TYPE"] - collections: [ #S1 SLC collections - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV", - "C1212001698-ASF" # INTERFEROMETRY - ] - expected: [{ - collections: - [ #S1 SLC collections - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV", - "C1212001698-ASF" # INTERFEROMETRY - ] - }] + - test-aliasing-search-against-api SMAP L1A_RADAR_RO_HDF5: + params: + platform: SMAP + processingLevel: L1A_RADAR_RO_HDF5 + + - test-aliasing-search-against-api UAVSAR: + params: + platform: UAVSAR -- test-search-build_subquery UNKNOWN_PROCESSING_TYPE with platform, SLC, & collection: - params: - platform: ['SENTINEL-1A', 'SENTINEL-1B', 'UAVSAR'] - processingLevel: ["UNKNOWN_PROCESSING_TYPE", 'SLC'] - collections: [ #S1 SLC collections - "C1212001698-ASF" # INTERFEROMETRY - ] - expected: [{ - collections: - [ #S1 SLC collections - "C1214470488-ASF", - "C1205428742-ASF", - "C1234413245-ASFDEV", - "C1327985661-ASF", - "C1216244348-ASF", - "C1234413263-ASFDEV", - "C1212001698-ASF" # INTERFEROMETRY - ] - }] \ No newline at end of file + - test-aliasing-search-against-api UAVSAR AMPLITUDE: + params: + platform: UAVSAR + processingLevel: AMPLITUDE \ No newline at end of file From a88e452697ffaf73375402a63381cb7b96f61803 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 10 Jan 2024 11:37:21 -0900 Subject: [PATCH 60/95] uncomments processingLevel->concept-id aliasing --- asf_search/CMR/subquery.py | 60 +++++++++++++++++++------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 25165196..06a44671 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -30,19 +30,19 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: params = dict([ (k, v) for k, v in params.items() if k not in skip_param_names ]) # in case all instances of platform and/or processingLevel can be substituded by a concept id - # keyword_collection_aliases = [] - # if 'processingLevel' in params.keys(): - # concept_id_aliases = [] - # for processingLevel in params['processingLevel']: - # if alias := collections_by_processing_level.get(processingLevel): - # concept_id_aliases.extend(alias) - # else: - # concept_id_aliases = [] - # break + keyword_collection_aliases = [] + if 'processingLevel' in params.keys(): + concept_id_aliases = [] + for processingLevel in params['processingLevel']: + if alias := collections_by_processing_level.get(processingLevel): + concept_id_aliases.extend(alias) + else: + concept_id_aliases = [] + break - # if len(concept_id_aliases): - # params.pop('processingLevel') - # params['processingLevel_collections'] = concept_id_aliases + if len(concept_id_aliases): + params.pop('processingLevel') + params['processingLevel_collections'] = concept_id_aliases if 'dataset' in params: if 'collections' not in params: @@ -55,11 +55,11 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: else: raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - # if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - # if len(processingLevel_collections): - # params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + if len(processingLevel_collections): + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - # params.pop('processingLevel_collections') + params.pop('processingLevel_collections') elif 'platform' in params: @@ -74,24 +74,24 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: if (collections := collections_per_platform.get(platform.upper())): params['collections'].extend(collections) - # if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - # if len(processingLevel_collections): - # params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + if len(processingLevel_collections): + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - # params.pop('processingLevel_collections') + params.pop('processingLevel_collections') params.pop('platform') - # else: - # if params.get('collections') is None: - # params['collections'] = [] - # if params.get('processingLevel_collections') is not None: - # params['collections'] = params.get('processingLevel_collections') - # else: - # if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - # params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) + else: + if params.get('collections') is None: + params['collections'] = [] + if params.get('processingLevel_collections') is not None: + params['collections'] = params.get('processingLevel_collections') + else: + if (processingLevel_collections := params.get('processingLevel_collections')) is not None: + params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - # if params.get('processingLevel_collections') is not None: - # params.pop('processingLevel_collections') + if params.get('processingLevel_collections') is not None: + params.pop('processingLevel_collections') subquery_params, list_params = {}, {} for k, v in params.items(): From 71e5955cae765aa1989292c9386869c7f1c62d8e Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 10 Jan 2024 13:26:32 -0900 Subject: [PATCH 61/95] adds exception reraise to test method query_endpoint() --- tests/Search/test_search.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Search/test_search.py b/tests/Search/test_search.py index cd9fe548..d8f34108 100644 --- a/tests/Search/test_search.py +++ b/tests/Search/test_search.py @@ -123,7 +123,7 @@ def run_test_keyword_aliasing_results(params: ASFSearchOptions): assert api_dict.get(sceneName, False), f'Found unexpected scene in asf-search module results, {sceneName}\{dict(params)}' -@retry(stop=stop_after_attempt(3), retry=retry_if_exception_type(requests.HTTPError)) +@retry(stop=stop_after_attempt(3), retry=retry_if_exception_type(requests.HTTPError), reraise=True) def query_endpoint(params): response = requests.post(url=SEARCHAPI_URL+SEARCHAPI_ENDPOINT, data={**params, 'output':'jsonlite'}) response.raise_for_status() From c14d612961dd512c124754143d46963416250c82 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 10 Jan 2024 16:49:24 -0900 Subject: [PATCH 62/95] breaks up concept-id related methods in build_subqueries()into separate methods --- asf_search/CMR/subquery.py | 153 ++++++++++++++++++++++--------------- 1 file changed, 90 insertions(+), 63 deletions(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 06a44671..684b28d4 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -1,4 +1,4 @@ -from typing import List +from typing import List, Optional import itertools from copy import copy @@ -24,74 +24,22 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: if params.get('product_list') is not None: params['product_list'] = chunk_list(params['product_list'], CMR_PAGE_SIZE) - list_param_names = ['platform', 'season', 'collections', 'dataset', 'processingLevel_collections'] # these parameters will dodge the subquery system + list_param_names = ['platform', 'season', 'collections', 'dataset'] # these parameters will dodge the subquery system skip_param_names = ['maxResults']# these params exist in opts, but shouldn't be passed on to subqueries at ALL params = dict([ (k, v) for k, v in params.items() if k not in skip_param_names ]) - # in case all instances of platform and/or processingLevel can be substituded by a concept id - keyword_collection_aliases = [] - if 'processingLevel' in params.keys(): - concept_id_aliases = [] - for processingLevel in params['processingLevel']: - if alias := collections_by_processing_level.get(processingLevel): - concept_id_aliases.extend(alias) - else: - concept_id_aliases = [] - break - - if len(concept_id_aliases): - params.pop('processingLevel') - params['processingLevel_collections'] = concept_id_aliases - - if 'dataset' in params: - if 'collections' not in params: - params['collections'] = [] - - for dataset in params.pop('dataset'): - if collections_by_short_name := dataset_collections.get(dataset): - for concept_ids in collections_by_short_name.values(): - params['collections'].extend(concept_ids) - else: - raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') - - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - if len(processingLevel_collections): - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - - params.pop('processingLevel_collections') + # Gets concept-ids for Dataset, and checks if concept-ids exist for platform, processingLevel + # processingLevel is scoped by dataset concept-ids, or platform concept-ids when available + collections, aliased_keywords = get_keyword_concept_ids(params) - - elif 'platform' in params: - if 'collections' not in params: - params['collections'] = [] - - missing = [platform for platform in params['platform'] if collections_per_platform.get(platform.upper()) is None] - - # collections limit platform searches, so if there are any we don't have collections for we skip this optimization - if len(missing) == 0: - for platform in params['platform']: - if (collections := collections_per_platform.get(platform.upper())): - params['collections'].extend(collections) - - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - if len(processingLevel_collections): - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - - params.pop('processingLevel_collections') - - params.pop('platform') + if 'collections' in params.keys(): + params['collections'] = list(set(*collections, *params.get('collections'))) else: - if params.get('collections') is None: - params['collections'] = [] - if params.get('processingLevel_collections') is not None: - params['collections'] = params.get('processingLevel_collections') - else: - if (processingLevel_collections := params.get('processingLevel_collections')) is not None: - params['collections'] = list(intersect1d(processingLevel_collections, params['collections'])) - - if params.get('processingLevel_collections') is not None: - params.pop('processingLevel_collections') + params['collections'] = collections + + for keyword in aliased_keywords: + params.pop(keyword) subquery_params, list_params = {}, {} for k, v in params.items(): @@ -117,6 +65,85 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: return final_sub_query_opts +def get_keyword_concept_ids(params: dict) -> dict: + """ + Gets concept-ids for dataset, platform, processingLevel keywords + processingLevel is scoped by dataset or platform concept-ids when available + + : param params: search parameter dictionary pre-CMR translation + : returns two lists: + - list of concept-ids for dataset, platform, and processingLevel + - list of keywords to remove from parameters + """ + collections = [] + keywords = [] + + processing_level_collections = [] + if 'processingLevel' in params.keys(): + pl_concept_id_aliases = get_processing_level_concept_ids(params.get('processingLevel')) + if len(pl_concept_id_aliases): + keywords.append('processingLevel') + processing_level_collections = pl_concept_id_aliases + + if 'dataset' in params.keys(): + keywords.append('dataset') + + collections.extend(get_dataset_concept_ids(params.get('dataset'))) + + if len(processing_level_collections): + collections = list(intersect1d(processing_level_collections, collections)) + + elif 'platform' in params.keys(): + platform_concept_ids = get_platform_concept_ids(params.get('platform')) + if len(platform_concept_ids): + collections.extend(platform_concept_ids) + + if processing_level_collections is not None: + if len(processing_level_collections): + collections = list(intersect1d(processing_level_collections, collections)) + keywords.append('platform') + + else: + if len(collections) and processing_level_collections is not None: + collections = list(intersect1d(processing_level_collections, collections)) + else: + collections = processing_level_collections + + return collections, keywords + +def get_processing_level_concept_ids(processingLevels: List[str]) -> List[str]: + concept_id_aliases = [] + for processingLevel in processingLevels: + if alias := collections_by_processing_level.get(processingLevel): + concept_id_aliases.extend(alias) + else: + break + + return [] + +def get_platform_concept_ids(platforms: List[str]) -> List[str]: + output = [] + + # collections limit platform searches, so if there are any we don't have collections for we skip this optimization + for platform in platforms: + if (collections := collections_per_platform.get(platform.upper())): + output.extend(collections) + else: + output = [] + break + + return output + +def get_dataset_concept_ids(datasets: List[str]) -> List[str]: + output = [] + for dataset in datasets: + if collections_by_short_name := dataset_collections.get(dataset): + for concept_ids in collections_by_short_name.values(): + output.extend(concept_ids) + else: + raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') + + return output def chunk_list(source: List, n: int) -> List: """ From 6e3299cc74251ae6217c5d34a892614a8ab47d11 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 11 Jan 2024 09:10:33 -0900 Subject: [PATCH 63/95] fixes collection set building in subquery.py --- asf_search/CMR/subquery.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 684b28d4..a0aa5c60 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -34,7 +34,7 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: collections, aliased_keywords = get_keyword_concept_ids(params) if 'collections' in params.keys(): - params['collections'] = list(set(*collections, *params.get('collections'))) + params['collections'] = list(set([*collections, *params.get('collections')])) else: params['collections'] = collections From cc7497214e40a53f4cc5cf75e2251ae1559605be Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 11 Jan 2024 12:26:06 -0900 Subject: [PATCH 64/95] refactors/cleanup some subquery logic --- asf_search/CMR/__init__.py | 2 +- asf_search/CMR/datasets.py | 40 ++++++++ asf_search/CMR/subquery.py | 134 ++++++++++---------------- asf_search/CMR/translate.py | 10 +- asf_search/search/search_generator.py | 6 +- 5 files changed, 98 insertions(+), 94 deletions(-) diff --git a/asf_search/CMR/__init__.py b/asf_search/CMR/__init__.py index 6e40db42..cb4c69ca 100644 --- a/asf_search/CMR/__init__.py +++ b/asf_search/CMR/__init__.py @@ -2,4 +2,4 @@ from .subquery import build_subqueries from .translate import translate_product, translate_opts, get_additional_fields from .field_map import field_map -from .datasets import dataset_collections, collections_per_platform, collections_by_processing_level \ No newline at end of file +from .datasets import dataset_collections, collections_per_platform, collections_by_processing_level, get_concept_id_alias, get_dataset_concept_ids \ No newline at end of file diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index e7f15448..2cb7e581 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -1,3 +1,6 @@ +from typing import List + + dataset_collections = { "SENTINEL-1": { "SENTINEL-1A_SLC": ["C1214470488-ASF", "C1205428742-ASF", "C1234413245-ASFDEV"], @@ -1071,3 +1074,40 @@ "SLOPE": ["C1214408428-ASF", "C1210599503-ASF"], "STOKES": ["C1214419355-ASF", "C1210599673-ASF"], } + +#################### Helper Methods #################### + +def get_concept_id_alias(param_list: List[str], collections_dict: dict) -> List[str]: + """ + param: param_list (List[str]): list of search values to alias + param: collections_dict (dict): The search value to concept-id dictionary to read from + + returns List[str]: Returns a list of concept-ids that correspond to the given list of search values + If any of the search values are not keys in the collections_dict, this will instead returns an empty list. + """ + concept_id_aliases = [] + for param in param_list: + if alias := collections_dict.get(param): + concept_id_aliases.extend(alias) + else: + return [] + + return concept_id_aliases + +def get_dataset_concept_ids(datasets: List[str]) -> List[str]: + """ + Returns concept-ids for provided dataset(s) + If an invalid datset is provided a ValueError is raised + + :param `datasets` (`List[str]`): a list of datasets to grab concept-ids for + :returns `List[str]`: the list of concept-ids associated with the given datasets + """ + output = [] + for dataset in datasets: + if collections_by_short_name := dataset_collections.get(dataset): + for concept_ids in collections_by_short_name.values(): + output.extend(concept_ids) + else: + raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') + + return output \ No newline at end of file diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index a0aa5c60..4c6a5b15 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -1,12 +1,12 @@ -from typing import List, Optional +from typing import List, Optional, Tuple import itertools from copy import copy from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.constants import CMR_PAGE_SIZE -from asf_search.CMR.datasets import collections_by_processing_level, collections_per_platform, dataset_collections -from numpy import intersect1d +from asf_search.CMR.datasets import collections_by_processing_level, collections_per_platform, dataset_collections, get_concept_id_alias, get_dataset_concept_ids +from numpy import intersect1d, union1d def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: """ @@ -29,15 +29,9 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: params = dict([ (k, v) for k, v in params.items() if k not in skip_param_names ]) - # Gets concept-ids for Dataset, and checks if concept-ids exist for platform, processingLevel - # processingLevel is scoped by dataset concept-ids, or platform concept-ids when available collections, aliased_keywords = get_keyword_concept_ids(params) - - if 'collections' in params.keys(): - params['collections'] = list(set([*collections, *params.get('collections')])) - else: - params['collections'] = collections - + params['collections'] = list(union1d(collections, params.get('collections', []))) + for keyword in aliased_keywords: params.pop(keyword) @@ -49,21 +43,28 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: subquery_params[k] = v sub_queries = cartesian_product(subquery_params) + final_sub_query_opts = [_build_subquery(query, opts, list_params) for query in sub_queries] - final_sub_query_opts = [] - for query in sub_queries: - q = dict() - for p in query: - q.update(p) - q['provider'] = opts.provider - q['host'] = opts.host - q['session'] = copy(opts.session) - for key in list_params.keys(): - q[key] = list_params[key] + return final_sub_query_opts - final_sub_query_opts.append(ASFSearchOptions(**q)) +def _build_subquery(query: List[Tuple[dict]], opts: ASFSearchOptions, list_params: dict) -> ASFSearchOptions: + """ + Composes query dict and list params into new ASFSearchOptions object - return final_sub_query_opts + param: query: the cartesian search query options + param: opts: the search options to pull config options from (provider, host, session) + param: list_params: the subquery parameters + """ + q = dict() + for p in query: + q.update(p) + return ASFSearchOptions( + **q, + provider= opts.provider, + host= opts.host, + session= copy(opts.session), + **list_params + ) def get_keyword_concept_ids(params: dict) -> dict: """ @@ -73,78 +74,43 @@ def get_keyword_concept_ids(params: dict) -> dict: : param params: search parameter dictionary pre-CMR translation : returns two lists: - list of concept-ids for dataset, platform, and processingLevel - - list of keywords to remove from parameters + - list of aliased keywords to remove from final parameters """ collections = [] - keywords = [] + aliased_keywords = [] - processing_level_collections = [] if 'processingLevel' in params.keys(): - pl_concept_id_aliases = get_processing_level_concept_ids(params.get('processingLevel')) - if len(pl_concept_id_aliases): - keywords.append('processingLevel') - processing_level_collections = pl_concept_id_aliases + collections = get_concept_id_alias(params.get('processingLevel'), collections_by_processing_level) + if len(collections): + aliased_keywords.append('processingLevel') + # Right now we only have XOR support for dataset and platform searches if 'dataset' in params.keys(): - keywords.append('dataset') - - collections.extend(get_dataset_concept_ids(params.get('dataset'))) - - if len(processing_level_collections): - collections = list(intersect1d(processing_level_collections, collections)) + aliased_keywords.append('dataset') + dataset_concept_ids = get_dataset_concept_ids(params.get('dataset')) + collections = _get_intersection(dataset_concept_ids, collections) elif 'platform' in params.keys(): - platform_concept_ids = get_platform_concept_ids(params.get('platform')) + platform_concept_ids = get_concept_id_alias( + [platform.upper() for platform in params.get('platform')], + collections_per_platform + ) if len(platform_concept_ids): - collections.extend(platform_concept_ids) - - if processing_level_collections is not None: - if len(processing_level_collections): - collections = list(intersect1d(processing_level_collections, collections)) - keywords.append('platform') - - else: - if len(collections) and processing_level_collections is not None: - collections = list(intersect1d(processing_level_collections, collections)) - else: - collections = processing_level_collections + aliased_keywords.append('platform') + collections = _get_intersection(platform_concept_ids, collections) - return collections, keywords - -def get_processing_level_concept_ids(processingLevels: List[str]) -> List[str]: - concept_id_aliases = [] - for processingLevel in processingLevels: - if alias := collections_by_processing_level.get(processingLevel): - concept_id_aliases.extend(alias) - else: - break - - return [] + return collections, aliased_keywords -def get_platform_concept_ids(platforms: List[str]) -> List[str]: - output = [] - - # collections limit platform searches, so if there are any we don't have collections for we skip this optimization - for platform in platforms: - if (collections := collections_per_platform.get(platform.upper())): - output.extend(collections) - else: - output = [] - break +def _get_intersection(keyword_concept_ids: List[str], intersecting_ids: List[str]) -> List[str]: + """ + Returns the intersection between two lists. If the second list is empty the first list + is return unchaged + """ + if len(intersecting_ids): + return list(intersect1d(intersecting_ids, keyword_concept_ids)) - return output - -def get_dataset_concept_ids(datasets: List[str]) -> List[str]: - output = [] - for dataset in datasets: - if collections_by_short_name := dataset_collections.get(dataset): - for concept_ids in collections_by_short_name.values(): - output.extend(concept_ids) - else: - raise ValueError(f'Could not find dataset named "{dataset}" provided for dataset keyword.') + return keyword_concept_ids - return output - def chunk_list(source: List, n: int) -> List: """ Breaks a longer list into a list of lists, each of length n @@ -163,7 +129,7 @@ def cartesian_product(params): return p -def format_query_params(params): +def format_query_params(params) -> List[List[dict]]: listed_params = [] for param_name, param_val in params.items(): @@ -173,7 +139,7 @@ def format_query_params(params): return listed_params -def translate_param(param_name, param_val): +def translate_param(param_name, param_val) -> List[dict]: param_list = [] if not isinstance(param_val, list): diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index 1cbffb26..31cd6f76 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -1,13 +1,14 @@ from datetime import datetime from typing import Any, Dict, List from asf_search.ASFSearchOptions import ASFSearchOptions +from asf_search.CMR.datasets import get_concept_id_alias from asf_search.constants import CMR_PAGE_SIZE import re from shapely import wkt from shapely.geometry import Polygon from shapely.geometry.base import BaseGeometry from .field_map import field_map -from .datasets import dataset_collections +from .datasets import dataset_collections, collections_per_platform import logging @@ -86,15 +87,10 @@ def translate_opts(opts: ASFSearchOptions) -> list: return cmr_opts - def should_use_asf_frame(cmr_opts): asf_frame_platforms = ['SENTINEL-1A', 'SENTINEL-1B', 'ALOS'] - asf_frame_datasets = ['SENTINEL-1', 'OPERA-S1', 'SLC-BURST', 'ALOS PALSAR', 'ALOS AVNIR-2'] - asf_frame_collections = [] - for dataset in asf_frame_datasets: - for concept_ids in dataset_collections.get(dataset).values(): - asf_frame_collections.extend(concept_ids) + asf_frame_collections = get_concept_id_alias(asf_frame_platforms, collections_per_platform) return any([ p[0] == 'platform[]' and p[1].upper() in asf_frame_platforms diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index 38f1df55..58b74c81 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -75,14 +75,16 @@ def search_generator( if maxResults is not None and \ (getattr(opts, 'granule_list', False) or getattr(opts, 'product_list', False)): raise ValueError("Cannot use maxResults along with product_list/granule_list.") - + + if opts.dataset is not None and opts.platform is not None: + raise ValueError("Cannot use dataset along with platform keyword in search.") + preprocess_opts(opts) url = '/'.join(s.strip('/') for s in [f'https://{opts.host}', f'{INTERNAL.CMR_GRANULE_PATH}']) total = 0 queries = build_subqueries(opts) - print(f"# of subqueries {len(queries)}") for query in queries: translated_opts = translate_opts(query) cmr_search_after_header = "" From 49624b28e60326dc36f980c7a3d2c0fa922432e6 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 11 Jan 2024 14:51:11 -0900 Subject: [PATCH 65/95] build_subquery(): improves variable names, simplifies some logic --- asf_search/CMR/subquery.py | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 4c6a5b15..18972dd2 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -13,39 +13,33 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: Build a list of sub-queries using the cartesian product of all the list parameters described by opts :param opts: The search options to split into sub-queries - :return list: A list of ASFSearchOptions objects """ params = dict(opts) # Break out two big list offenders into manageable chunks - if params.get('granule_list') is not None: - params['granule_list'] = chunk_list(params['granule_list'], CMR_PAGE_SIZE) - if params.get('product_list') is not None: - params['product_list'] = chunk_list(params['product_list'], CMR_PAGE_SIZE) + for chunked_key in ['granule_list', 'product_list']: + if params.get(chunked_key) is not None: + params[chunked_key] = chunk_list(params[chunked_key], CMR_PAGE_SIZE) list_param_names = ['platform', 'season', 'collections', 'dataset'] # these parameters will dodge the subquery system skip_param_names = ['maxResults']# these params exist in opts, but shouldn't be passed on to subqueries at ALL - params = dict([ (k, v) for k, v in params.items() if k not in skip_param_names ]) - collections, aliased_keywords = get_keyword_concept_ids(params) params['collections'] = list(union1d(collections, params.get('collections', []))) - for keyword in aliased_keywords: - params.pop(keyword) + for keyword in [*skip_param_names, *aliased_keywords]: + params.pop(keyword, None) subquery_params, list_params = {}, {} - for k, v in params.items(): - if k in list_param_names: - list_params[k] = v + for key, value in params.items(): + if key in list_param_names: + list_params[key] = value else: - subquery_params[k] = v - + subquery_params[key] = value + sub_queries = cartesian_product(subquery_params) - final_sub_query_opts = [_build_subquery(query, opts, list_params) for query in sub_queries] - - return final_sub_query_opts + return [_build_subquery(query, opts, list_params) for query in sub_queries] def _build_subquery(query: List[Tuple[dict]], opts: ASFSearchOptions, list_params: dict) -> ASFSearchOptions: """ From 9c48e58484d326f465377e771ce3f206f5d9f614 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 11 Jan 2024 16:51:10 -0900 Subject: [PATCH 66/95] adds collectionAlias ASFSearchOptions keyword, allows bypassingconcept-id aliasing for platform and processingLevel --- CHANGELOG.md | 5 ++- asf_search/ASFSearchOptions/config.py | 1 + asf_search/ASFSearchOptions/validator_map.py | 3 +- asf_search/CMR/subquery.py | 33 ++++++++++---------- 4 files changed, 24 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a51da3b5..fbe37a37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,7 +29,10 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [v7.0.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.3...v7.0.0) ### Changed - Constants are no longer top level import, are now accessible through respective modules -- `processingLevel` and `platform` are now aliased by collection concept-ids, (lists of concept ids by their processing levels/platforms viewable in `dataset.py`), improving performance and dodging subquery system +- `processingLevel` and `platform` are now aliased by collection concept-ids, (lists of concept ids by their processing levels/platforms viewable in `dataset.py`), improving search performance and dodging subquery system + +### Added +- Added `collectionAlias` to `ASFSearchOptions` validator map as config param. Set to `False` to disable concept-id aliasing behaviour for `processingLevel` and `platform`. ------ ## [v6.7.3](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.2...v6.7.3) diff --git a/asf_search/ASFSearchOptions/config.py b/asf_search/ASFSearchOptions/config.py index 13ebb430..6b02e947 100644 --- a/asf_search/ASFSearchOptions/config.py +++ b/asf_search/ASFSearchOptions/config.py @@ -5,4 +5,5 @@ 'host': INTERNAL.CMR_HOST, 'provider': INTERNAL.DEFAULT_PROVIDER, 'session': ASFSession(), + 'collectionAlias': True } diff --git a/asf_search/ASFSearchOptions/validator_map.py b/asf_search/ASFSearchOptions/validator_map.py index 38803de3..72fdd0a4 100644 --- a/asf_search/ASFSearchOptions/validator_map.py +++ b/asf_search/ASFSearchOptions/validator_map.py @@ -66,5 +66,6 @@ def validate(key, value): # Config parameters Parser 'session': parse_session, 'host': parse_string, - 'provider': parse_string + 'provider': parse_string, + 'collectionAlias': bool, } diff --git a/asf_search/CMR/subquery.py b/asf_search/CMR/subquery.py index 18972dd2..e4a1b3c6 100644 --- a/asf_search/CMR/subquery.py +++ b/asf_search/CMR/subquery.py @@ -25,7 +25,7 @@ def build_subqueries(opts: ASFSearchOptions) -> List[ASFSearchOptions]: list_param_names = ['platform', 'season', 'collections', 'dataset'] # these parameters will dodge the subquery system skip_param_names = ['maxResults']# these params exist in opts, but shouldn't be passed on to subqueries at ALL - collections, aliased_keywords = get_keyword_concept_ids(params) + collections, aliased_keywords = get_keyword_concept_ids(params, opts.collectionAlias) params['collections'] = list(union1d(collections, params.get('collections', []))) for keyword in [*skip_param_names, *aliased_keywords]: @@ -60,12 +60,13 @@ def _build_subquery(query: List[Tuple[dict]], opts: ASFSearchOptions, list_param **list_params ) -def get_keyword_concept_ids(params: dict) -> dict: +def get_keyword_concept_ids(params: dict, use_collection_alias: bool=True) -> dict: """ Gets concept-ids for dataset, platform, processingLevel keywords processingLevel is scoped by dataset or platform concept-ids when available : param params: search parameter dictionary pre-CMR translation + : param use_collection_alias: whether or not to alias platform and processingLevel with concept-ids : returns two lists: - list of concept-ids for dataset, platform, and processingLevel - list of aliased keywords to remove from final parameters @@ -73,25 +74,25 @@ def get_keyword_concept_ids(params: dict) -> dict: collections = [] aliased_keywords = [] - if 'processingLevel' in params.keys(): - collections = get_concept_id_alias(params.get('processingLevel'), collections_by_processing_level) - if len(collections): - aliased_keywords.append('processingLevel') + if use_collection_alias: + if 'processingLevel' in params.keys(): + collections = get_concept_id_alias(params.get('processingLevel'), collections_by_processing_level) + if len(collections): + aliased_keywords.append('processingLevel') + + if 'platform' in params.keys(): + platform_concept_ids = get_concept_id_alias( + [platform.upper() for platform in params.get('platform')], + collections_per_platform + ) + if len(platform_concept_ids): + aliased_keywords.append('platform') + collections = _get_intersection(platform_concept_ids, collections) - # Right now we only have XOR support for dataset and platform searches if 'dataset' in params.keys(): aliased_keywords.append('dataset') dataset_concept_ids = get_dataset_concept_ids(params.get('dataset')) collections = _get_intersection(dataset_concept_ids, collections) - - elif 'platform' in params.keys(): - platform_concept_ids = get_concept_id_alias( - [platform.upper() for platform in params.get('platform')], - collections_per_platform - ) - if len(platform_concept_ids): - aliased_keywords.append('platform') - collections = _get_intersection(platform_concept_ids, collections) return collections, aliased_keywords From 003663e7970999e48995fc80b257679f9cb9b24d Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 12 Jan 2024 10:25:08 -0900 Subject: [PATCH 67/95] forward declaration, only tries importing RemoteZip once, raise importError instead of warning --- asf_search/ASFProduct.py | 2 +- asf_search/download/download.py | 21 ++++++++++----------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index b16b7503..245f093a 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -131,7 +131,7 @@ def centroid(self) -> Point: return Polygon(unwrapped_coords).centroid - def remotezip(self, session: ASFSession): + def remotezip(self, session: ASFSession) -> 'RemoteZip': """Returns a RemoteZip object which can be used to download a part of an ASFProduct's zip archive. (See example in examples/5-Download.ipynb) diff --git a/asf_search/download/download.py b/asf_search/download/download.py index d75306c6..fce5e8d9 100644 --- a/asf_search/download/download.py +++ b/asf_search/download/download.py @@ -5,12 +5,16 @@ from requests import Response from requests.exceptions import HTTPError import warnings -import regex as re from asf_search.exceptions import ASFAuthenticationError, ASFDownloadError from asf_search import ASF_LOGGER, ASFSession from tenacity import retry, stop_after_delay, retry_if_result, wait_fixed +try: + from remotezip import RemoteZip +except ImportError: + RemoteZip = None + def _download_url(arg): url, path, session = arg download_url( @@ -73,21 +77,16 @@ def download_url(url: str, path: str, filename: str = None, session: ASFSession for chunk in response.iter_content(chunk_size=8192): f.write(chunk) -def remotezip(url: str, session: ASFSession): +def remotezip(url: str, session: ASFSession) -> 'RemoteZip': """ :param url: the url to the zip product :param session: the authenticated ASFSession to read and download from the zip file """ - try: - import remotezip - except ImportError: - remotezip = None + if RemoteZip is None: + raise ImportError("Could not find remotezip package in current python environment. \"remotezip\" is an optional dependency of asf-search required for the `remotezip()` method, and can be install via `python3 -m pip install asf-search[extras]`") - if remotezip is None: - ASF_LOGGER.warn("Could not find remotezip package in current python environment. \"remotezip\" is an optional dependency of asf-search required for the `remotezip()` method, and can be install via `python3 -m pip install asf-search[extras]`") - else: - session.hooks['response'].append(strip_auth_if_aws) - return remotezip.RemoteZip(url, session=session) + session.hooks['response'].append(strip_auth_if_aws) + return RemoteZip(url, session=session) def strip_auth_if_aws(r, *args, **kwargs): if 300 <= r.status_code <= 399 and 'amazonaws.com' in parse.urlparse(r.headers['location']).netloc: From 06670e04e74cbf63c869e6c5d5a8815ee914ec9e Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 12 Jan 2024 13:27:20 -0900 Subject: [PATCH 68/95] adds way to convert to subclass while stacking products --- asf_search/ASFProduct.py | 67 ++++++++++++++++++++++++++-- asf_search/ASFSearchResults.py | 24 +++++----- asf_search/search/baseline_search.py | 23 +++++++--- 3 files changed, 94 insertions(+), 20 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index d590a569..7fd1209e 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,6 +1,6 @@ from enum import Enum import os -from typing import Tuple, Union, List, final +from typing import Callable, Tuple, Type, Union, List, final import warnings from shapely.geometry import shape, Point, Polygon, mapping import json @@ -165,13 +165,15 @@ def _get_additional_filenames_and_urls(self, def stack( self, - opts: ASFSearchOptions = None + opts: ASFSearchOptions = None, + ASFProductSubclass: Union[Type['ASFProduct'], Callable[['ASFProduct'], 'ASFProduct']] = None ) -> ASFSearchResults: """ Builds a baseline stack from this product. :param opts: An ASFSearchOptions object describing the search parameters to be used. Search parameters specified outside this object will override in event of a conflict. - + :param ASFProductSubclass: An ASFProduct subclass constructor, or a callable that takes an ASFProduct object and returns and object of type ASFProduct. + :return: ASFSearchResults containing the stack, with the addition of baseline values (temporal, perpendicular) attached to each ASFProduct. """ from .search.baseline_search import stack_from_product @@ -179,7 +181,7 @@ def stack( if opts is None: opts = ASFSearchOptions(session=self.session) - return stack_from_product(self, opts=opts) + return stack_from_product(self, opts=opts, ASFProductSubclass=ASFProductSubclass) def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ @@ -396,3 +398,60 @@ def umm_cast(f, v): return f(v) except TypeError: return None + + @final + def cast_to_subclass(self, subclass: Union[Type['ASFProduct'], Callable[['ASFProduct'], 'ASFProduct']]) -> 'ASFProduct': + """ + Casts this ASFProduct object as a new object of return type subclass. + + example: + ``` + class MyCustomClass(ASFProduct): + _base_properties = { + 'some_unique_property': {'path': ['AdditionalAttributes', 'UNIQUE_PROPERTY', ...]} + } + + ... + + @staticmethod + def get_property_paths() -> dict: + return { + **ASFProduct.get_property_paths(), + **MyCustomClass._base_properties + } + + # subclass as constructor + customReference = reference.cast_to_subclass(MyCustomClass) + print(customReference.properties['some_unique_property']) + + # sublclass as callable + def convert_to_product_if(original_product: ASFProduct) -> ASFProduct: + # conversion logic here + if original_product.properties['processingLevel'] == '' + return MyCustomClass( + args={'umm': original_product.umm, 'meta': original_product.meta}, + session=original_product.session + ) + + # otherwise return orignal product + return original_product + + customReference = reference.cast_to_subclass(convert_to_product_if) + ``` + + :param subclass: The ASFProduct subclass to convert to or a method with signature `func(original: ASFProduct) -> ASFProduct` + :returns `ASFProduct` of return type `subclass` + """ + + try: + if isinstance(subclass, Type[ASFProduct]): + return subclass(args={'umm': self.umm, 'meta': self.meta}, session=self.session) + elif isinstance(subclass, Callable[[ASFProduct], ASFProduct]): + output = subclass(self) + if not isinstance(output, ASFProduct): + raise ValueError(f"Expected returned object of type `ASFProduct` from callable {subclass}, got {type(output)}") + return output + + raise ValueError(f"Expected subclass or method of return type ASFProduct, got {type(subclass)}") + except Exception as e: + raise ValueError(f"Unable to use provided subclass {type(subclass)}") \ No newline at end of file diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index 9f9fd4a2..be94f979 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -2,7 +2,7 @@ from multiprocessing import Pool from functools import reduce import json -from typing import Type, Callable +from typing import Type, Callable, Union from asf_search import ASFSession, ASFSearchOptions, ASFProduct from asf_search.download.file_download_type import FileDownloadType from asf_search.exceptions import ASFSearchError @@ -81,16 +81,6 @@ def raise_if_incomplete(self) -> None: ASF_LOGGER.error(msg) raise ASFSearchError(msg) - - def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Callable = lambda _: True): - count = 0 - for idx, product in enumerate(self.data): - if criteria(product): - self.data[idx] = ASFProductSubclass(args={'umm': product.umm, 'meta': product.meta}, session=product.session) - count += 1 - - ASF_LOGGER.log(f'Converted {count} ASFProduct objects to subclass f{type(ASFProductSubclass)}') - def get_products_by_subclass_type(self) -> dict: """ Organizes results into dictionary by ASFProduct subclass name @@ -107,7 +97,19 @@ def get_products_by_subclass_type(self) -> dict: subclasses[product_type].append(product) return subclasses + + def cast_to_subclass(self, ASFProductSubclass: Union[Type[ASFProduct], Callable[[ASFProduct], ASFProduct]]) -> None: + """Converts products to provided return type in-place, taking either a constructor or callable""" + converted = 0 + for idx, product in enumerate(self.data): + converted_product = product.cast_to_subclass(ASFProductSubclass) + if converted_product != product: + self.data[idx] = converted_product + converted+=1 + + ASF_LOGGER.debug(f"Converted {converted} products to custom ASFProduct subclass type") def _download_product(args) -> None: product, path, session, fileType = args product.download(path=path, session=session, fileType=fileType) + diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 1c495470..4bd2c519 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -1,3 +1,5 @@ +from typing import Callable, Type, Union +from asf_search.ASFSearchOptions.validators import parse_subclass from asf_search.baseline.stack import get_baseline_from_stack from copy import copy @@ -20,14 +22,16 @@ def stack_from_product( reference: ASFProduct, - opts: ASFSearchOptions = None + opts: ASFSearchOptions = None, + ASFProductSubclass: Union[Type[ASFProduct], Callable[[ASFProduct], ASFProduct]] = None ) -> ASFSearchResults: """ Finds a baseline stack from a reference ASFProduct :param reference: Reference scene to base the stack on, and from which to calculate perpendicular/temporal baselines :param opts: An ASFSearchOptions object describing the search parameters to be used. Search parameters specified outside this object will override in event of a conflict. - + :param ASFProductSubclass: An ASFProduct subclass constructor, or a callable that takes an ASFProduct object and returns and object of type ASFProduct. + :return: ASFSearchResults(dict) of search results """ @@ -36,6 +40,9 @@ def stack_from_product( opts.merge_args(**dict(reference.get_stack_opts())) stack = search(opts=opts) + if ASFProductSubclass is not None: + stack.cast_to_subclass(ASFProductSubclass) + is_complete = stack.searchComplete stack, warnings = get_baseline_from_stack(reference=reference, stack=stack) @@ -48,14 +55,16 @@ def stack_from_product( def stack_from_id( reference_id: str, - opts: ASFSearchOptions = None + opts: ASFSearchOptions = None, + ASFProductSubclass: Union[Type[ASFProduct], Callable[[ASFProduct], ASFProduct]] = None ) -> ASFSearchResults: """ Finds a baseline stack from a reference product ID :param reference_id: Reference product to base the stack from, and from which to calculate perpendicular/temporal baselines :param opts: An ASFSearchOptions object describing the search parameters to be used. Search parameters specified outside this object will override in event of a conflict. - + :param ASFProductSubclass: An ASFProduct subclass constructor, or a callable that takes an ASFProduct object and returns and object of type ASFProduct. + :return: ASFSearchResults(list) of search results """ @@ -69,5 +78,9 @@ def stack_from_id( if len(reference_results) <= 0: raise ASFSearchError(f'Reference product not found: {reference_id}') reference = reference_results[0] + + if ASFProductSubclass is not None: + reference = reference.cast_to_subclass(ASFProductSubclass) + - return stack_from_product(reference, opts=opts) + return stack_from_product(reference, opts=opts, ASFProductSubclass=ASFProductSubclass) From 5e2b586cc87eb8517dfc6ebe13bc8d5c0c4e55fd Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 12 Jan 2024 13:43:21 -0900 Subject: [PATCH 69/95] removes bad import from baseline_search --- asf_search/search/baseline_search.py | 1 - 1 file changed, 1 deletion(-) diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 4bd2c519..c02b865e 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -1,5 +1,4 @@ from typing import Callable, Type, Union -from asf_search.ASFSearchOptions.validators import parse_subclass from asf_search.baseline.stack import get_baseline_from_stack from copy import copy From 3def216cac71f81b632cb824de4d411586058b2c Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 12 Jan 2024 13:45:58 -0900 Subject: [PATCH 70/95] removes ASFProduct import from ASFSearchResults --- asf_search/ASFSearchResults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index be94f979..fd9bf5bf 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -3,7 +3,7 @@ from functools import reduce import json from typing import Type, Callable, Union -from asf_search import ASFSession, ASFSearchOptions, ASFProduct +from asf_search import ASFSession, ASFSearchOptions from asf_search.download.file_download_type import FileDownloadType from asf_search.exceptions import ASFSearchError @@ -98,7 +98,7 @@ def get_products_by_subclass_type(self) -> dict: return subclasses - def cast_to_subclass(self, ASFProductSubclass: Union[Type[ASFProduct], Callable[[ASFProduct], ASFProduct]]) -> None: + def cast_to_subclass(self, ASFProductSubclass: Union[Type['ASFProduct'], Callable[['ASFProduct'], 'ASFProduct']]) -> None: """Converts products to provided return type in-place, taking either a constructor or callable""" converted = 0 for idx, product in enumerate(self.data): From 18050872cad7382bb27dabe3a66a871a07976f15 Mon Sep 17 00:00:00 2001 From: kim Date: Fri, 12 Jan 2024 17:09:41 -0900 Subject: [PATCH 71/95] adds example notebook for ASFProduct subclasses, and how to write custom ASFProduct subclasses --- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 250 ++++++++++++++++++ 1 file changed, 250 insertions(+) create mode 100644 examples/Advanced-Custom-ASFProduct-Subclassing.ipynb diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb new file mode 100644 index 00000000..7b1abc6b --- /dev/null +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -0,0 +1,250 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Subclassing `ASFProduct`\n", + "\n", + "`ASFProduct` is the base class for all search result objects as of asf-search v7.0.0. There are several subclasses of `ASFProduct` that asf-search uses for specific platforms and product types with unique properties/functionality." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import asf_search as asf\n", + "products = ['S1A_IW_SLC__1SDV_20231226T162948_20231226T163016_051828_0642C6_272F-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES']\n", + "results = asf.product_search(product_list=products)\n", + "results" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notice the different type in the `results` list: `S1Product`, `S1BURSTProduct`, `ARIAS1GUNWProduct`, and `ALOSProduct`.\n", + "Each of these are subclasses of type `ASFProduct`.\n", + "\n", + "Let's compare the `properties` of `S1Product` and `ALOSProduct`" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "s1, s1Burst, ariaGunw, alos = results\n", + "\n", + "def compare_properties(lhs: asf.ASFProduct, rhs: asf.ASFProduct):\n", + " # Compares properties of two ASFProduct objects in a color coded table\n", + " # values printed in red are missing from that product type altogether\n", + " \n", + " # Color Coding\n", + " RED = '\\033[31m'\n", + " GREEN = '\\033[32m'\n", + " BLUE = '\\033[34m'\n", + " RESET = '\\033[0m'\n", + "\n", + " print(f'\\t{GREEN}{type(lhs)}{RESET}\\t{BLUE}{type(rhs)}{RESET}')\n", + " \n", + " keys = {*lhs.properties.keys(), *rhs.properties.keys()}\n", + " for key in keys:\n", + " print(f\"{key}:\\n\\t{GREEN}{lhs.properties.get(key, f'{RED}None')}{RESET}\\t{BLUE}{rhs.properties.get(key, f'{RED}None')}{RESET}\\n\")\n", + "\n", + "compare_properties(s1, alos)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notice a few properties (marked in red) are missing from each product properties dict. For example, `S1Product` has `pgeVersion`, while `ALOSProduct` has `offNadirAngle`, `faradayRotation`, and `insarStackId`. Moreover, their `baseline` field differs." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(f\"{s1.properties['fileID']}\\n\\t{s1.baseline}\\n\")\n", + "print(f\"{alos.properties['fileID']}\\n\\t{alos.baseline}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`ASFProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via `ASFProduct.baseline_type`\n", + "\n", + "The three `BaselineCalcType` types:\n", + "- `NONE` Cannot be used in baseline calculations\n", + "- `PRE_CALCULATED` Has pre-calculated insarBaseline value that will be used for perpendicular calculations\n", + "- `CALCULATED` Uses position/velocity state vectors and ascending node time for perpendicular calculations\n", + "\n", + "Any subclass object that changes `baseline_type` from the default of `BaselineCalcType.NONE` is elligble for building a baseline stacking with `ASFProduct.stack()` (see the 4-Baseline_Search.ipynb example notebook for more examples of baseline stacking)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(f\"Baseline Calculation Types\")\n", + "print(f\"ASFProduct:\\t {asf.ASFProduct.baseline_type}\")\n", + "print(f\"ALOSProduct:\\t {alos.baseline_type}\")\n", + "print(f\"S1Product:\\t {s1.baseline_type}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`ASFProduct` subclasses even have their own stack search option methods. The `ASFProduct` implementation of `get_stack_opts()` returns `None`, but subclasses like `S1Product` and `ALOSProduct` have different approaches." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(f\"S1Product:\\n{s1.get_stack_opts()}\\n\")\n", + "print(f\"ALOSProduct:\\n{alos.get_stack_opts()}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Sublcasses of type `ASFProduct` can just as easily be parent classes to other subclasses, like `S1Product`, which is the parent class to `S1BurstProduct` and `ARIAS1GUNWProduct`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"S1BurstProduct:\")\n", + "print(f\"\\tburst dict:\\n\\t{s1Burst.properties['burst']}\")\n", + "print(f\"\\nS1BurstProduct.get_stack_opts(): {s1Burst.get_stack_opts()}\\n\\n\")\n", + "\n", + "print(f\"ARIAS1GUNWProduct:\")\n", + "print(f\"\\tperpendicularBaseline: {ariaGunw.properties['perpendicularBaseline']}\")\n", + "print(f\"\\tOrbit: {ariaGunw.properties['orbit']}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Because `ASFProduct` is built for subclassing, that means users can provide their own custom subclasses." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import copy\n", + "from typing import Union\n", + "from asf_search import ASFSearchOptions, ASFSession\n", + "from asf_search.ASFSearchOptions import ASFSearchOptions\n", + "\n", + "class MyCustomClass(asf.S1Product):\n", + " def __init__(\n", + " #default ASFProduct arguments\n", + " self, args: dict = {}, session: ASFSession = ASFSession(), \n", + " #custom properties\n", + " custom_properties: dict = {}\n", + " ):\n", + " super().__init__(args, session)\n", + "\n", + " # unique property of MyCustomClass\n", + " self.custom_properties = custom_properties\n", + " \n", + " # write custom methods\n", + " def as_umm_json(self) -> dict:\n", + " return { 'umm': self.umm, 'meta': self.meta }\n", + " \n", + " # Override built in ASFProduct methods, like `geojson()`, `get_stack_opts()`, or `get_default_baseline_product_type()`\n", + " def geojson(self) -> dict:\n", + " output = {\n", + " **super().geojson()\n", + " }\n", + "\n", + " output['properties'] = {\n", + " **output['properties'],\n", + " 'customProperties': self.custom_properties\n", + " }\n", + "\n", + " return output\n", + " \n", + " def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions:\n", + " # use S1Product's stack opt already written functionality\n", + " opts = super().get_stack_opts(opts)\n", + "\n", + " # but use some new product type to build the stack instead of S1Product's default, \"SLC\"\n", + " opts.processingLevel = self.get_default_baseline_product_type()\n", + "\n", + " return opts\n", + " \n", + " @staticmethod\n", + " def get_default_baseline_product_type() -> Union[str, None]:\n", + " \"\"\"\n", + " Returns the product type to search for when building a baseline stack.\n", + " \"\"\"\n", + " return 'NEW_PRODUCT_TYPE'\n", + "\n", + "customS1SubclassObject = MyCustomClass({'umm': s1.umm, 'meta': s1.meta}, session=s1.session, custom_properties={'customProperty': 'This is a special property'})\n", + "\n", + "customS1SubclassObject.geojson()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notice the `customProperties` field in the output from `geojson()`.\n", + "`get_stack_opts()` should also use S1Product's stack ops, but with `NEW_PRODUCT_TYPE` instead of `SLC`:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(customS1SubclassObject.get_stack_opts())" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "asf-search-env-current", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 36b108face03c7b2c66f2b6fd6b9d81003e2e10b Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 16 Jan 2024 08:40:11 -0900 Subject: [PATCH 72/95] renames subclass notebook example class, adds test case to notebook tests --- examples/Advanced-Custom-ASFProduct-Subclassing.ipynb | 8 ++++---- tests/yml_tests/test_notebooks.yml | 6 ++++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index 7b1abc6b..f2f29fdf 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -158,7 +158,7 @@ "from asf_search import ASFSearchOptions, ASFSession\n", "from asf_search.ASFSearchOptions import ASFSearchOptions\n", "\n", - "class MyCustomClass(asf.S1Product):\n", + "class MyCustomS1Subclass(asf.S1Product):\n", " def __init__(\n", " #default ASFProduct arguments\n", " self, args: dict = {}, session: ASFSession = ASFSession(), \n", @@ -203,9 +203,9 @@ " \"\"\"\n", " return 'NEW_PRODUCT_TYPE'\n", "\n", - "customS1SubclassObject = MyCustomClass({'umm': s1.umm, 'meta': s1.meta}, session=s1.session, custom_properties={'customProperty': 'This is a special property'})\n", + "customS1SubclassProduct = MyCustomS1Subclass({'umm': s1.umm, 'meta': s1.meta}, session=s1.session, custom_properties={'customProperty': 'This is a special property'})\n", "\n", - "customS1SubclassObject.geojson()" + "customS1SubclassProduct.geojson()" ] }, { @@ -222,7 +222,7 @@ "metadata": {}, "outputs": [], "source": [ - "print(customS1SubclassObject.get_stack_opts())" + "print(customS1SubclassProduct.get_stack_opts())" ] } ], diff --git a/tests/yml_tests/test_notebooks.yml b/tests/yml_tests/test_notebooks.yml index 7883052c..8b75d6cb 100644 --- a/tests/yml_tests/test_notebooks.yml +++ b/tests/yml_tests/test_notebooks.yml @@ -10,3 +10,9 @@ tests: - Test Baseline-Search notebook: notebook: 4-Baseline_Search.ipynb + +- Test Baseline-Search notebook: + notebook: 4-Baseline_Search.ipynb + +- Test Baseline-Search notebook: +notebook: Advanced-Custom-ASFProduct-Subclassing.ipynb From ca5f812a6a6185b23caf2e269e8d7546597e143d Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 16 Jan 2024 08:43:00 -0900 Subject: [PATCH 73/95] fixes yml typo --- tests/yml_tests/test_notebooks.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/yml_tests/test_notebooks.yml b/tests/yml_tests/test_notebooks.yml index 8b75d6cb..562de6a6 100644 --- a/tests/yml_tests/test_notebooks.yml +++ b/tests/yml_tests/test_notebooks.yml @@ -15,4 +15,4 @@ tests: notebook: 4-Baseline_Search.ipynb - Test Baseline-Search notebook: -notebook: Advanced-Custom-ASFProduct-Subclassing.ipynb + notebook: Advanced-Custom-ASFProduct-Subclassing.ipynb From 20642c59f8b919557a81df7343ff46a0020b810b Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 16 Jan 2024 08:44:38 -0900 Subject: [PATCH 74/95] makes ASFProduct get_stack_opts() return None by default --- asf_search/ASFProduct.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index d590a569..f602963a 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -187,7 +187,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: :return: ASFSearchOptions describing appropriate options for building a stack from this product """ - return opts + return None def centroid(self) -> Point: """ From 3e5387b41546ee74176f7e03b1614ba07da25ba3 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 16 Jan 2024 11:58:57 -0900 Subject: [PATCH 75/95] removes product subclass casting from ASFProduct class, makes standalone methods in baseline_search module --- asf_search/ASFProduct.py | 61 +------------------ asf_search/ASFSearchResults.py | 11 ---- asf_search/baseline/stack.py | 3 +- asf_search/search/baseline_search.py | 59 +++++++++++++++--- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 36 ++++++++++- 5 files changed, 91 insertions(+), 79 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index d63ef0cf..c88cac98 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -166,13 +166,13 @@ def _get_additional_filenames_and_urls(self, def stack( self, opts: ASFSearchOptions = None, - ASFProductSubclass: Union[Type['ASFProduct'], Callable[['ASFProduct'], 'ASFProduct']] = None + ASFProductSubclass: Type['ASFProduct'] = None ) -> ASFSearchResults: """ Builds a baseline stack from this product. :param opts: An ASFSearchOptions object describing the search parameters to be used. Search parameters specified outside this object will override in event of a conflict. - :param ASFProductSubclass: An ASFProduct subclass constructor, or a callable that takes an ASFProduct object and returns and object of type ASFProduct. + :param ASFProductSubclass: An ASFProduct subclass constructor. :return: ASFSearchResults containing the stack, with the addition of baseline values (temporal, perpendicular) attached to each ASFProduct. """ @@ -398,60 +398,3 @@ def umm_cast(f, v): return f(v) except TypeError: return None - - @final - def cast_to_subclass(self, subclass: Union[Type['ASFProduct'], Callable[['ASFProduct'], 'ASFProduct']]) -> 'ASFProduct': - """ - Casts this ASFProduct object as a new object of return type subclass. - - example: - ``` - class MyCustomClass(ASFProduct): - _base_properties = { - 'some_unique_property': {'path': ['AdditionalAttributes', 'UNIQUE_PROPERTY', ...]} - } - - ... - - @staticmethod - def get_property_paths() -> dict: - return { - **ASFProduct.get_property_paths(), - **MyCustomClass._base_properties - } - - # subclass as constructor - customReference = reference.cast_to_subclass(MyCustomClass) - print(customReference.properties['some_unique_property']) - - # sublclass as callable - def convert_to_product_if(original_product: ASFProduct) -> ASFProduct: - # conversion logic here - if original_product.properties['processingLevel'] == '' - return MyCustomClass( - args={'umm': original_product.umm, 'meta': original_product.meta}, - session=original_product.session - ) - - # otherwise return orignal product - return original_product - - customReference = reference.cast_to_subclass(convert_to_product_if) - ``` - - :param subclass: The ASFProduct subclass to convert to or a method with signature `func(original: ASFProduct) -> ASFProduct` - :returns `ASFProduct` of return type `subclass` - """ - - try: - if isinstance(subclass, Type[ASFProduct]): - return subclass(args={'umm': self.umm, 'meta': self.meta}, session=self.session) - elif isinstance(subclass, Callable[[ASFProduct], ASFProduct]): - output = subclass(self) - if not isinstance(output, ASFProduct): - raise ValueError(f"Expected returned object of type `ASFProduct` from callable {subclass}, got {type(output)}") - return output - - raise ValueError(f"Expected subclass or method of return type ASFProduct, got {type(subclass)}") - except Exception as e: - raise ValueError(f"Unable to use provided subclass {type(subclass)}") \ No newline at end of file diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index fd9bf5bf..f44d71a8 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -98,17 +98,6 @@ def get_products_by_subclass_type(self) -> dict: return subclasses - def cast_to_subclass(self, ASFProductSubclass: Union[Type['ASFProduct'], Callable[['ASFProduct'], 'ASFProduct']]) -> None: - """Converts products to provided return type in-place, taking either a constructor or callable""" - converted = 0 - for idx, product in enumerate(self.data): - converted_product = product.cast_to_subclass(ASFProductSubclass) - if converted_product != product: - self.data[idx] = converted_product - converted+=1 - - ASF_LOGGER.debug(f"Converted {converted} products to custom ASFProduct subclass type") - def _download_product(args) -> None: product, path, session, fileType = args product.download(path=path, session=session, fileType=fileType) diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 0c0d7f47..5af44667 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -10,6 +10,7 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): if len(stack) == 0: raise ValueError('No products found matching stack parameters') stack = [product for product in stack if not product.properties['processingLevel'].lower().startswith('metadata') and product.baseline != None] + reference, stack, warnings = check_reference(reference, stack) stack = calculate_temporal_baselines(reference, stack) @@ -68,4 +69,4 @@ def offset_perpendicular_baselines(reference: ASFProduct, stack: ASFSearchResult for product in stack: product.properties['perpendicularBaseline'] = round(float(product.baseline['insarBaseline']) - reference_offset) - return stack + return stack \ No newline at end of file diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index c02b865e..e5067763 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -22,14 +22,14 @@ def stack_from_product( reference: ASFProduct, opts: ASFSearchOptions = None, - ASFProductSubclass: Union[Type[ASFProduct], Callable[[ASFProduct], ASFProduct]] = None + ASFProductSubclass: Type[ASFProduct] = None ) -> ASFSearchResults: """ Finds a baseline stack from a reference ASFProduct :param reference: Reference scene to base the stack on, and from which to calculate perpendicular/temporal baselines :param opts: An ASFSearchOptions object describing the search parameters to be used. Search parameters specified outside this object will override in event of a conflict. - :param ASFProductSubclass: An ASFProduct subclass constructor, or a callable that takes an ASFProduct object and returns and object of type ASFProduct. + :param ASFProductSubclass: An ASFProduct subclass constructor :return: ASFSearchResults(dict) of search results """ @@ -39,11 +39,12 @@ def stack_from_product( opts.merge_args(**dict(reference.get_stack_opts())) stack = search(opts=opts) - if ASFProductSubclass is not None: - stack.cast_to_subclass(ASFProductSubclass) is_complete = stack.searchComplete + if ASFProductSubclass is not None: + _try_cast_results_to_subclass(stack, ASFProductSubclass) + stack, warnings = get_baseline_from_stack(reference=reference, stack=stack) stack.searchComplete = is_complete # preserve final outcome of earlier search() @@ -55,14 +56,14 @@ def stack_from_product( def stack_from_id( reference_id: str, opts: ASFSearchOptions = None, - ASFProductSubclass: Union[Type[ASFProduct], Callable[[ASFProduct], ASFProduct]] = None + ASFProductSubclass: Type[ASFProduct] = None ) -> ASFSearchResults: """ Finds a baseline stack from a reference product ID :param reference_id: Reference product to base the stack from, and from which to calculate perpendicular/temporal baselines :param opts: An ASFSearchOptions object describing the search parameters to be used. Search parameters specified outside this object will override in event of a conflict. - :param ASFProductSubclass: An ASFProduct subclass constructor, or a callable that takes an ASFProduct object and returns and object of type ASFProduct. + :param ASFProductSubclass: An ASFProduct subclass constructor. :return: ASFSearchResults(list) of search results """ @@ -79,7 +80,51 @@ def stack_from_id( reference = reference_results[0] if ASFProductSubclass is not None: - reference = reference.cast_to_subclass(ASFProductSubclass) + reference = _try_cast_to_subclass(reference, ASFProductSubclass) return stack_from_product(reference, opts=opts, ASFProductSubclass=ASFProductSubclass) + +def _try_cast_results_to_subclass(stack: ASFProduct, ASFProductSubclass: Type[ASFProduct]): + """ + Converts results from default ASFProduct subclasses to custom ones + """ + for idx, product in enumerate(stack): + stack[idx] = _try_cast_to_subclass(product, ASFProductSubclass) + +def _try_cast_to_subclass(product: ASFProduct, subclass: Type[ASFProduct]) -> ASFProduct: + """ + Casts this ASFProduct object as a new object of return type subclass. + + example: + ``` + class MyCustomClass(ASFProduct): + _base_properties = { + 'some_unique_property': {'path': ['AdditionalAttributes', 'UNIQUE_PROPERTY', ...]} + } + + ... + + @staticmethod + def get_property_paths() -> dict: + return { + **ASFProduct.get_property_paths(), + **MyCustomClass._base_properties + } + + # subclass as constructor + customReference = reference.cast_to_subclass(MyCustomClass) + print(customReference.properties['some_unique_property']) + ``` + + :param subclass: The ASFProduct subclass constructor to call on the product + :returns return product as `ASFProduct` subclass + """ + + try: + if isinstance(subclass, type(ASFProduct)): + return subclass(args={'umm': product.umm, 'meta': product.meta}, session=product.session) + except Exception as e: + raise ValueError(f"Unable to use provided subclass {type(subclass)}, \nError Message: {e}") + + raise ValueError(f"Expected ASFProduct subclass constructor, got {type(subclass)}") \ No newline at end of file diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index f2f29fdf..116f9244 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -224,6 +224,40 @@ "source": [ "print(customS1SubclassProduct.get_stack_opts())" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Using Custom `ASFProduct` Subclasses in Baseline Search\n", + "\n", + "There may be instances where you want to build a spatio-temporal baseline stack from a reference of a custom subclass. `stack_from_id()` and `ASFProduct.stack()` support this via the `ASFProductSubclass` keyword." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "customSubclassStack = s1.stack(ASFProductSubclass=MyCustomS1Subclass)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "customSubclassStack" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Baseline search will now use your subclass's `get_stack_opts()` and `is_valid_reference()` methods, as well as the `baseline_type` and any property path overrides." + ] } ], "metadata": { @@ -242,7 +276,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.8.18" } }, "nbformat": 4, From bc34d1b5d926957b66bc3eec17f6bd4da30c34a6 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 17 Jan 2024 10:22:39 -0900 Subject: [PATCH 76/95] updates subclassing notebook, shows example of overriding ASFProduct.stack() --- asf_search/ASFProduct.py | 4 +- asf_search/search/baseline_search.py | 9 +- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 142 ++++++++++++------ 3 files changed, 101 insertions(+), 54 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index c88cac98..dfb5f5c3 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -166,7 +166,7 @@ def _get_additional_filenames_and_urls(self, def stack( self, opts: ASFSearchOptions = None, - ASFProductSubclass: Type['ASFProduct'] = None + useSubclass: Type['ASFProduct'] = None ) -> ASFSearchResults: """ Builds a baseline stack from this product. @@ -181,7 +181,7 @@ def stack( if opts is None: opts = ASFSearchOptions(session=self.session) - return stack_from_product(self, opts=opts, ASFProductSubclass=ASFProductSubclass) + return stack_from_product(self, opts=opts, ASFProductSubclass=useSubclass) def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index e5067763..38a097fe 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -56,7 +56,7 @@ def stack_from_product( def stack_from_id( reference_id: str, opts: ASFSearchOptions = None, - ASFProductSubclass: Type[ASFProduct] = None + useSubclass: Type[ASFProduct] = None ) -> ASFSearchResults: """ Finds a baseline stack from a reference product ID @@ -79,11 +79,10 @@ def stack_from_id( raise ASFSearchError(f'Reference product not found: {reference_id}') reference = reference_results[0] - if ASFProductSubclass is not None: - reference = _try_cast_to_subclass(reference, ASFProductSubclass) + if useSubclass is not None: + reference = _try_cast_to_subclass(reference, useSubclass) - - return stack_from_product(reference, opts=opts, ASFProductSubclass=ASFProductSubclass) + return reference.stack(opts=opts, useSubclass=useSubclass) def _try_cast_results_to_subclass(stack: ASFProduct, ASFProductSubclass: Type[ASFProduct]): """ diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index 116f9244..861ca106 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -16,7 +16,7 @@ "outputs": [], "source": [ "import asf_search as asf\n", - "products = ['S1A_IW_SLC__1SDV_20231226T162948_20231226T163016_051828_0642C6_272F-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES']\n", + "products = ['S1A_IW_SLC__1SDV_20231224T032123_20231224T032150_051791_064179_16F5-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES']\n", "results = asf.product_search(product_list=products)\n", "results" ] @@ -154,56 +154,90 @@ "outputs": [], "source": [ "import copy\n", - "from typing import Union\n", + "from typing import Type, Union\n", "from asf_search import ASFSearchOptions, ASFSession\n", "from asf_search.ASFSearchOptions import ASFSearchOptions\n", + "from asf_search.CMR.translate import try_parse_int\n", + "from datetime import datetime\n", "\n", "class MyCustomS1Subclass(asf.S1Product):\n", " def __init__(\n", - " #default ASFProduct arguments\n", - " self, args: dict = {}, session: ASFSession = ASFSession(), \n", - " #custom properties\n", - " custom_properties: dict = {}\n", + " #default ASFProduct constructor arguments\n", + " self, args: dict = {}, session: ASFSession = ASFSession()\n", " ):\n", " super().__init__(args, session)\n", "\n", - " # unique property of MyCustomClass\n", - " self.custom_properties = custom_properties\n", - " \n", + " # totaly unique property of MyCustomClass\n", + " self.timestamp = datetime.now()\n", + "\n", + " # _base_properties is a special dict of ASFProduct that maps keywords to granule UMM json\n", + " # defining properties and their paths here in conjunction with `get_property_paths()` \n", + " # will let you easily access them in the product's `properties` dictionary\n", + " # see `ASFProduct.umm_get()` for explanation of pathing\n", + " _base_properties = {\n", + " # Most product types use `CENTER_ESA_FRAME` as the value for `frameNumber` (unlike S1 and ALOS, which use `FRAME_NUMBER`), \n", + " # this creates a new `esaFrame` property so we have that value too\n", + " 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0], 'cast': try_parse_int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME)\n", + " }\n", + "\n", + " \"\"\" Example umm that the above pathing would map to:\n", + " 'umm': {\n", + " 'AdditionalAttributes': [\n", + " {\n", + " 'Name': 'CENTER_ESA_FRAME',\n", + " \"Values\": ['1300'] \n", + " },\n", + " ...\n", + " ],\n", + " ...\n", + " }\n", + " \"\"\"\n", + "\n", " # write custom methods\n", " def as_umm_json(self) -> dict:\n", " return { 'umm': self.umm, 'meta': self.meta }\n", " \n", - " # Override built in ASFProduct methods, like `geojson()`, `get_stack_opts()`, or `get_default_baseline_product_type()`\n", + " # Or Override built in ASFProduct methods, like `geojson()`, `get_stack_opts()`, or `get_default_baseline_product_type()`\n", + " \n", + " # This override of `geojson()` includes the product's state vectors in the final geojson output, \n", + " # along with a custom class field timestamp and what version of asf-search was used at runtime\n", " def geojson(self) -> dict:\n", - " output = {\n", - " **super().geojson()\n", - " }\n", - "\n", - " output['properties'] = {\n", - " **output['properties'],\n", - " 'customProperties': self.custom_properties\n", - " }\n", + " output = super().geojson()\n", "\n", + " output['properties']['stateVectors'] = self.get_state_vectors()\n", + " output['properties']['timestamp'] = str(self.timestamp)\n", + " output['properties']['ASFSearchVersion'] = asf.__version__\n", " return output\n", " \n", - " def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions:\n", - " # use S1Product's stack opt already written functionality\n", - " opts = super().get_stack_opts(opts)\n", - "\n", - " # but use some new product type to build the stack instead of S1Product's default, \"SLC\"\n", - " opts.processingLevel = self.get_default_baseline_product_type()\n", - "\n", - " return opts\n", - " \n", + " # This method is used internally by `ASFProduct.translate_product()` \n", + " # to traverse the granule UMM for each property's corresponding values\n", " @staticmethod\n", - " def get_default_baseline_product_type() -> Union[str, None]:\n", - " \"\"\"\n", - " Returns the product type to search for when building a baseline stack.\n", - " \"\"\"\n", - " return 'NEW_PRODUCT_TYPE'\n", + " def get_property_paths() -> dict:\n", + " return {\n", + " **asf.S1Product.get_property_paths(),\n", + " **MyCustomS1Subclass._base_properties\n", + " }\n", + " \n", + " # This method normally stacks the current product\n", + " # in this version we search for every SLC-BURST product that\n", + " # overlaps the given area, and return a list of burst stacks\n", + " def stack(self, \n", + " opts: ASFSearchOptions = None,\n", + " aoi: str = None,\n", + " useSubclass: Type[asf.ASFProduct] = None):\n", + " \n", + " bursts = asf.search(\n", + " groupID=self.properties['groupID'], \n", + " processingLevel=asf.PRODUCT_TYPE.BURST,\n", + " intersectsWith=aoi if aoi is not None else opts.intersectsWith\n", + " )\n", "\n", - "customS1SubclassProduct = MyCustomS1Subclass({'umm': s1.umm, 'meta': s1.meta}, session=s1.session, custom_properties={'customProperty': 'This is a special property'})\n", + " if len(bursts) == 0: # use default S1Product version if there's no SLC_BURST\n", + " return super().stack(opts=opts, useSubclass=useSubclass)\n", + " \n", + " return [burst.stack(opts=opts) for burst in bursts]\n", + "\n", + "customS1SubclassProduct = MyCustomS1Subclass({'umm': s1.umm, 'meta': s1.meta}, session=s1.session)\n", "\n", "customS1SubclassProduct.geojson()" ] @@ -212,8 +246,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Notice the `customProperties` field in the output from `geojson()`.\n", - "`get_stack_opts()` should also use S1Product's stack ops, but with `NEW_PRODUCT_TYPE` instead of `SLC`:" + "Notice the `customProperties` field in the output from `geojson()`." ] }, { @@ -222,16 +255,25 @@ "metadata": {}, "outputs": [], "source": [ - "print(customS1SubclassProduct.get_stack_opts())" + "fairbanks_area = 'LINESTRING(-147.2885 64.7464,-147.733 64.8586,-148.1878 64.731)'\n", + "customStack = customS1SubclassProduct.stack(aoi=fairbanks_area)\n", + "customStack" ] }, { - "cell_type": "markdown", + "cell_type": "code", + "execution_count": null, "metadata": {}, + "outputs": [], "source": [ - "# Using Custom `ASFProduct` Subclasses in Baseline Search\n", + "from typing import List\n", "\n", - "There may be instances where you want to build a spatio-temporal baseline stack from a reference of a custom subclass. `stack_from_id()` and `ASFProduct.stack()` support this via the `ASFProductSubclass` keyword." + "def view_stack_of_stacks(stack_of_stacks: List):\n", + " print(f'Found {len(stack_of_stacks)} SLC-BURST stacks over AOI, stack lengths:')\n", + " for stack_idx, stack in enumerate(stack_of_stacks):\n", + " print(f\"\\t{stack_idx+1}:\\t{len(stack)} SLC-BURSTs \\t(Full Burst ID: {stack[-1].properties['burst']['fullBurstID']})\")\n", + "\n", + "view_stack_of_stacks(customStack)" ] }, { @@ -240,23 +282,29 @@ "metadata": {}, "outputs": [], "source": [ - "customSubclassStack = s1.stack(ASFProductSubclass=MyCustomS1Subclass)" + "compare_properties(s1, customS1SubclassProduct)" ] }, { - "cell_type": "code", - "execution_count": null, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "customSubclassStack" + "# Using Custom `ASFProduct` Subclasses in Baseline Search\n", + "\n", + "There may be instances where you want to build a spatio-temporal baseline stack from a reference of a custom subclass. `stack_from_id()` and `ASFProduct.stack()` support this via the `ASFProductSubclass` keyword." ] }, { - "cell_type": "markdown", + "cell_type": "code", + "execution_count": null, "metadata": {}, + "outputs": [], "source": [ - "Baseline search will now use your subclass's `get_stack_opts()` and `is_valid_reference()` methods, as well as the `baseline_type` and any property path overrides." + "opts = asf.ASFSearchOptions(intersectsWith=fairbanks_area) # our custom class will be able to use our aoi this way\n", + "\n", + "customSubclassStack = asf.stack_from_id('S1A_IW_SLC__1SDV_20231224T032123_20231224T032150_051791_064179_16F5-SLC', opts=opts, useSubclass=MyCustomS1Subclass)\n", + "\n", + "view_stack_of_stacks(customSubclassStack)" ] } ], @@ -276,7 +324,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.18" + "version": "3.10.12" } }, "nbformat": 4, From 10291d1cb2dbf21dccb108b071bd93e00fe168d1 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 17 Jan 2024 10:34:54 -0900 Subject: [PATCH 77/95] removes unused import --- asf_search/ASFProduct.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index dfb5f5c3..dd4a1406 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,6 +1,6 @@ from enum import Enum import os -from typing import Callable, Tuple, Type, Union, List, final +from typing import Tuple, Type, Union, List, final import warnings from shapely.geometry import shape, Point, Polygon, mapping import json From 6496803b056fd47699c9a9197079ec8c080b7822 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 17 Jan 2024 11:26:49 -0900 Subject: [PATCH 78/95] removes _try from _try_cast methods in baseline_search.py --- asf_search/search/baseline_search.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/asf_search/search/baseline_search.py b/asf_search/search/baseline_search.py index 38a097fe..cd337c1c 100644 --- a/asf_search/search/baseline_search.py +++ b/asf_search/search/baseline_search.py @@ -43,7 +43,7 @@ def stack_from_product( is_complete = stack.searchComplete if ASFProductSubclass is not None: - _try_cast_results_to_subclass(stack, ASFProductSubclass) + _cast_results_to_subclass(stack, ASFProductSubclass) stack, warnings = get_baseline_from_stack(reference=reference, stack=stack) stack.searchComplete = is_complete # preserve final outcome of earlier search() @@ -80,18 +80,18 @@ def stack_from_id( reference = reference_results[0] if useSubclass is not None: - reference = _try_cast_to_subclass(reference, useSubclass) + reference = _cast_to_subclass(reference, useSubclass) return reference.stack(opts=opts, useSubclass=useSubclass) -def _try_cast_results_to_subclass(stack: ASFProduct, ASFProductSubclass: Type[ASFProduct]): +def _cast_results_to_subclass(stack: ASFSearchResults, ASFProductSubclass: Type[ASFProduct]): """ Converts results from default ASFProduct subclasses to custom ones """ for idx, product in enumerate(stack): - stack[idx] = _try_cast_to_subclass(product, ASFProductSubclass) + stack[idx] = _cast_to_subclass(product, ASFProductSubclass) -def _try_cast_to_subclass(product: ASFProduct, subclass: Type[ASFProduct]) -> ASFProduct: +def _cast_to_subclass(product: ASFProduct, subclass: Type[ASFProduct]) -> ASFProduct: """ Casts this ASFProduct object as a new object of return type subclass. From 115f587818f794535dad113207a1a13fd91bfb4d Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 17 Jan 2024 16:43:24 -0900 Subject: [PATCH 79/95] Cleans up some logic, fixes type hinting for Dict and List, removes offNadirAngle for all but ALOS products --- asf_search/ASFProduct.py | 34 ++++-- asf_search/ASFSearchResults.py | 6 +- asf_search/CMR/translate.py | 30 ++--- asf_search/Products/AIRSARProduct.py | 6 +- asf_search/Products/ALOSProduct.py | 18 +-- asf_search/Products/ARIAS1GUNWProduct.py | 5 +- asf_search/Products/ERSProduct.py | 17 ++- asf_search/Products/JERSProduct.py | 17 ++- asf_search/Products/OPERAS1Product.py | 5 +- asf_search/Products/RadarsatProduct.py | 17 ++- asf_search/Products/S1BURSTProduct.py | 14 +-- asf_search/Products/S1Product.py | 75 ++++++------ asf_search/Products/SEASATProduct.py | 6 +- asf_search/Products/SIRCProduct.py | 5 +- asf_search/Products/SMAPProduct.py | 6 +- asf_search/Products/UAVSARProduct.py | 6 +- asf_search/export/jsonlite.py | 3 +- asf_search/export/kml.py | 3 +- asf_search/health/health.py | 3 +- asf_search/search/search_generator.py | 107 +++++++++++------- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 9 +- tests/BaselineSearch/Stack/test_stack.py | 2 +- 22 files changed, 225 insertions(+), 169 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index f602963a..234a1ae6 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,6 +1,6 @@ from enum import Enum import os -from typing import Tuple, Union, List, final +from typing import Any, Dict, Tuple, Union, List, final import warnings from shapely.geometry import shape, Point, Polygon, mapping import json @@ -94,7 +94,7 @@ class BaselineCalcType(Enum): combine `ASFProduct._base_properties` with their own separately defined `_base_properties` """ - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): self.meta = args.get('meta') self.umm = args.get('umm') @@ -109,7 +109,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): def __str__(self): return json.dumps(self.geojson(), indent=2, sort_keys=True) - def geojson(self) -> dict: + def geojson(self) -> Dict: """Returns ASFProduct object as a geojson formatted dictionary, with `type`, `geometry`, and `properties` keys""" return { 'type': 'Feature', @@ -160,8 +160,13 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, def _get_additional_filenames_and_urls(self, default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) - ): - return [(os.path.split(parse.urlparse(url).path)[1], url) for url in self.properties['additionalUrls']] + ) -> List[Tuple[str, str]]: + return [(self._parse_filename_from_url(url), url) for url in self.properties['additionalUrls']] + + def _parse_filename_from_url(self, url: str) -> str: + file_path = os.path.split(parse.urlparse(url).path) + filename = file_path[1] + return filename def stack( self, @@ -212,7 +217,14 @@ def remotezip(self, session: ASFSession) -> RemoteZip: return remotezip(self.properties['url'], session=session) - def translate_product(self, item: dict) -> dict: + def _read_umm_property(self, umm: Dict, mapping: Dict) -> Any: + value = self.umm_get(umm, *mapping['path']) + if mapping.get('cast') is None: + return value + + return self.umm_cast(mapping['cast'], value) + + def translate_product(self, item: Dict) -> Dict: """ Generates `properties` and `geometry` from the CMR UMM response """ @@ -226,8 +238,8 @@ def translate_product(self, item: dict) -> dict: umm = item.get('umm') properties = { - prop: umm_entry['cast'](self.umm_get(umm, *umm_entry['path'])) if umm_entry.get('cast') is not None else self.umm_get(umm, *umm_entry['path']) - for prop, umm_entry in self.get_property_paths().items() + prop: self._read_umm_property(umm, umm_mapping) + for prop, umm_mapping in self.get_property_paths().items() } if properties.get('url') is not None: @@ -246,7 +258,7 @@ def translate_product(self, item: dict) -> dict: # ASFProduct subclasses define extra/override param key + UMM pathing here @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: """ Returns _base_properties of class, subclasses such as `S1Product` (or user provided subclasses) can override this to define which properties they want in their subclass's properties dict. @@ -257,7 +269,7 @@ def get_property_paths() -> dict: """ return ASFProduct._base_properties - def get_baseline_calc_properties(self) -> dict: + def get_baseline_calc_properties(self) -> Dict: """ Used by subclasses to assign baseline values to `ASFProduct.baseline` property. """ @@ -284,7 +296,7 @@ def get_default_baseline_product_type() -> Union[str, None]: @final @staticmethod - def umm_get(item: dict, *args): + def umm_get(item: Dict, *args): """ Used to search for values in CMR UMM diff --git a/asf_search/ASFSearchResults.py b/asf_search/ASFSearchResults.py index 9f9fd4a2..0d370062 100644 --- a/asf_search/ASFSearchResults.py +++ b/asf_search/ASFSearchResults.py @@ -2,7 +2,7 @@ from multiprocessing import Pool from functools import reduce import json -from typing import Type, Callable +from typing import Dict, Type, Callable from asf_search import ASFSession, ASFSearchOptions, ASFProduct from asf_search.download.file_download_type import FileDownloadType from asf_search.exceptions import ASFSearchError @@ -91,10 +91,10 @@ def convert_to_sublcass(self, ASFProductSubclass: type(ASFProduct), criteria: Ca ASF_LOGGER.log(f'Converted {count} ASFProduct objects to subclass f{type(ASFProductSubclass)}') - def get_products_by_subclass_type(self) -> dict: + def get_products_by_subclass_type(self) -> Dict: """ Organizes results into dictionary by ASFProduct subclass name - : return: dict of ASFSearchResults, organized by ASFProduct subclass names + : return: Dict of ASFSearchResults, organized by ASFProduct subclass names """ subclasses = {} diff --git a/asf_search/CMR/translate.py b/asf_search/CMR/translate.py index bc0f8ca0..4cf62fc5 100644 --- a/asf_search/CMR/translate.py +++ b/asf_search/CMR/translate.py @@ -1,5 +1,5 @@ from datetime import datetime -from typing import Any, Dict +from typing import Any, Dict, List, Optional from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.constants import CMR_PAGE_SIZE import re @@ -12,7 +12,7 @@ import logging -def translate_opts(opts: ASFSearchOptions) -> list: +def translate_opts(opts: ASFSearchOptions) -> List: # Need to add params which ASFSearchOptions cant support (like temporal), # so use a dict to avoid the validate_params logic: dict_opts = dict(opts) @@ -145,24 +145,24 @@ def use_asf_frame(cmr_opts): return cmr_opts # some products don't have integer values in BYTES fields, round to nearest int -def try_round_float(value: str): - if value is not None: - value = float(value) - return round(value) +def try_round_float(value: str) -> Optional[int]: + if value is None: + return None - return value + value = float(value) + return round(value) -def try_parse_int(value: str): - if value is not None: - return int(value) +def try_parse_int(value: str) -> Optional[int]: + if value is None: + return None - return value + return int(value) -def try_parse_float(value: str): - if value is not None: - return float(value) +def try_parse_float(value: str) -> Optional[float]: + if value is None: + return None - return value + return float(value) def fix_date(fixed_params: Dict[str, Any]): if 'start' in fixed_params or 'end' in fixed_params or 'season' in fixed_params: diff --git a/asf_search/Products/AIRSARProduct.py b/asf_search/Products/AIRSARProduct.py index cf54e4e8..54c2c03c 100644 --- a/asf_search/Products/AIRSARProduct.py +++ b/asf_search/Products/AIRSARProduct.py @@ -1,4 +1,5 @@ import copy +from typing import Dict from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_float, try_parse_int @@ -11,14 +12,13 @@ class AIRSARProduct(ASFProduct): 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **AIRSARProduct._base_properties diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index d92618e9..c9216122 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,5 +1,5 @@ import copy -from typing import Union +from typing import Dict, Union from asf_search import ASFSession, ASFProduct, ASFSearchOptions from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.constants import PRODUCT_TYPE @@ -21,14 +21,14 @@ class ALOSProduct(ASFProduct): baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() if self.properties.get('groupID') is None: self.properties['groupID'] = self.properties['sceneName'] - def get_baseline_calc_properties(self) -> dict: + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: @@ -40,14 +40,14 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() - if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts - - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts + @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **ALOSProduct._base_properties diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 04338293..04a06a09 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -1,3 +1,4 @@ +from typing import Dict from asf_search import ASFSession from asf_search.Products import S1Product from asf_search.CMR.translate import try_parse_float @@ -12,7 +13,7 @@ class ARIAS1GUNWProduct(S1Product): 'orbit': {'path': ['OrbitCalculatedSpatialDomains']} } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.properties['orbit'] = [orbit['OrbitNumber'] for orbit in self.properties['orbit']] @@ -23,7 +24,7 @@ def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): self.properties['additionalUrls'] = [urls[1]] @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **S1Product.get_property_paths(), **ARIAS1GUNWProduct._base_properties diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index e13ef871..1ad676bb 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,5 +1,5 @@ import copy -from typing import Union +from typing import Dict, Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_float, try_round_float from asf_search.constants import PRODUCT_TYPE @@ -18,17 +18,16 @@ class ERSProduct(ASFProduct): 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - def get_baseline_calc_properties(self) -> dict: + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: @@ -41,14 +40,14 @@ def get_baseline_calc_properties(self) -> dict: def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() - if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **ERSProduct._base_properties diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 57e4b8a1..06d42c61 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,5 +1,5 @@ import copy -from typing import Union +from typing import Dict, Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE @@ -14,17 +14,16 @@ class JERSProduct(ASFProduct): 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - def get_baseline_calc_properties(self) -> dict: + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: @@ -35,7 +34,7 @@ def get_baseline_calc_properties(self) -> dict: return None @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **JERSProduct._base_properties @@ -46,11 +45,11 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() - if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 3da00c36..451d9d80 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -1,3 +1,4 @@ +from typing import Dict from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product @@ -16,7 +17,7 @@ class OPERAS1Product(S1Product): 'polarization': {'path': ['AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values']} # dual polarization is in list rather than a 'VV+VH' style format } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = None @@ -56,7 +57,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = ASFSearchOptions()) -> ASFSear return opts @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **S1Product.get_property_paths(), **OPERAS1Product._base_properties diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 62e68f34..78c61722 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,5 +1,5 @@ import copy -from typing import Union +from typing import Dict, Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE @@ -11,7 +11,6 @@ class RadarsatProduct(ASFProduct): """ _base_properties = { 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} @@ -19,11 +18,11 @@ class RadarsatProduct(ASFProduct): baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - def get_baseline_calc_properties(self) -> dict: + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) if insarBaseline is not None: @@ -39,14 +38,14 @@ def get_stack_opts(self, stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() - if self.properties.get('insarStackId') not in [None, 'NA', 0, '0']: - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **RadarsatProduct._base_properties diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BURSTProduct.py index 7c24e4fe..9b61ec2e 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BURSTProduct.py @@ -1,5 +1,5 @@ import copy -from typing import Union +from typing import Dict, Union from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product from asf_search.CMR.translate import try_parse_int @@ -28,7 +28,7 @@ class S1BURSTProduct(S1Product): 'azimuthAnxTime': {'path': ['AdditionalAttributes', ('Name', 'AZIMUTH_ANX_TIME'), 'Values', 0]}, } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.properties['sceneName'] = self.properties['fileID'] @@ -66,7 +66,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): return stack_opts @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **S1Product.get_property_paths(), **S1BURSTProduct._base_properties @@ -74,10 +74,10 @@ def get_property_paths() -> dict: def _get_additional_filenames_and_urls(self, default_filename: str = None): # Burst XML filenames are just numbers, this makes it more indentifiable - if file_name is None: - file_name = '.'.join(self.properties['fileName'].split('.')[:-1]) + 'xml' - else: - file_name = '.'.join(default_filename.split('.')[:-1]) + 'xml' + if default_filename is None: + default_filename = self.properties['fileName'] + + file_name = f"{'.'.join(default_filename.split('.')[:-1])}.xml" return [(file_name, self.properties['additionalUrls'][0])] diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index ee9d56c8..0a67fd2a 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,5 +1,5 @@ import copy -from typing import Union +from typing import Dict, List, Optional, Tuple from asf_search import ASFSearchOptions, ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_int from asf_search.constants import PLATFORM @@ -26,33 +26,38 @@ class S1Product(ASFProduct): baseline_type = ASFProduct.BaselineCalcType.CALCULATED - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) + if self._has_baseline(): + self.baseline = self.get_baseline_calc_properties() + + + def _has_baseline(self) -> bool: baseline = self.get_baseline_calc_properties() - if baseline is not None: - if None not in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: - self.baseline = baseline + if baseline is None: + return False + if None in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: + return False - - - def get_baseline_calc_properties(self) -> dict: + return True + + def get_baseline_calc_properties(self) -> Dict: """ :returns properties required for SLC baseline stack calculations """ - ascendingNodeTime = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) - - if ascendingNodeTime is not None: - if not ascendingNodeTime.endswith('Z'): - ascendingNodeTime += 'Z' + ascendingNodeTime = self.umm_cast( + self._parse_timestamp, + self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) + ) return { 'stateVectors': self.get_state_vectors(), 'ascendingNodeTime': ascendingNodeTime } - def get_state_vectors(self) -> dict: + def get_state_vectors(self) -> Dict: """ Used in spatio-temporal perpendicular baseline calculations for non-pre-calculated stacks @@ -60,27 +65,35 @@ def get_state_vectors(self) -> dict: positions = {} velocities = {} - positions['prePosition'], positions['prePositionTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0)) - positions['postPosition'], positions['postPositionTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0)) - velocities['preVelocity'], velocities['preVelocityTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0)) - velocities['postVelocity'], velocities['postVelocityTime'] = self.umm_cast(self._get_state_vector, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0)) - - for key in ['prePositionTime','postPositionTime','preVelocityTime','postVelocityTime']: - if positions.get(key) is not None: - if not positions.get(key).endswith('Z'): - positions[key] += 'Z' + sv_pre_position = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_PRE'), 'Values', 0) + sv_post_position = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0) + sv_pre_velocity = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0) + sv_post_velocity = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0) + + positions['prePosition'], positions['prePositionTime'] = self.umm_cast(self._parse_state_vector, sv_pre_position) + positions['postPosition'], positions['postPositionTime'] = self.umm_cast(self._parse_state_vector, sv_post_position) + velocities['preVelocity'], velocities['preVelocityTime'] = self.umm_cast(self._parse_state_vector, sv_pre_velocity) + velocities['postVelocity'], velocities['postVelocityTime'] = self.umm_cast(self._parse_state_vector, sv_post_velocity) return { 'positions': positions, 'velocities': velocities } - @staticmethod - def _get_state_vector(state_vector: str): + def _parse_timestamp(self, timestamp: str) -> Optional[str]: + if timestamp is None: + return None + + return timestamp if timestamp.endswith('Z') else f'{timestamp}Z' + + def _parse_state_vector(self, state_vector: str) -> Tuple[Optional[List], Optional[str]]: if state_vector is None: return None, None - return list(map(float, state_vector.split(',')[:3])), state_vector.split(',')[-1] + velocity = list(map(float, state_vector.split(',')[:3])) + timestamp = self._parse_timestamp(state_vector.split(',')[-1]) + + return velocity, timestamp def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ @@ -102,7 +115,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: return stack_opts @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **S1Product._base_properties @@ -110,17 +123,15 @@ def get_property_paths() -> dict: def is_valid_reference(self) -> bool: """perpendicular baselines are not pre-calculated for S1 products and require position/velocity state vectors to calculate""" - return self.valid_state_vectors() - - def valid_state_vectors(self) -> bool: for key in ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime']: if key not in self.baseline['stateVectors']['positions'] or self.baseline['stateVectors']['positions'][key] == None: return False + return True @staticmethod - def get_default_baseline_product_type() -> Union[str, None]: + def get_default_baseline_product_type() -> str: """ Returns the product type to search for when building a baseline stack. """ - return PRODUCT_TYPE.SLC \ No newline at end of file + return PRODUCT_TYPE.SLC diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index e6237ac4..66a0de19 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -1,3 +1,4 @@ +from typing import Dict from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_float, try_round_float @@ -9,14 +10,13 @@ class SEASATProduct(ASFProduct): 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **SEASATProduct._base_properties diff --git a/asf_search/Products/SIRCProduct.py b/asf_search/Products/SIRCProduct.py index 5796bb57..e5e9ad31 100644 --- a/asf_search/Products/SIRCProduct.py +++ b/asf_search/Products/SIRCProduct.py @@ -1,3 +1,4 @@ +from typing import Dict from asf_search import ASFProduct, ASFSession class SIRCProduct(ASFProduct): @@ -11,11 +12,11 @@ class SIRCProduct(ASFProduct): 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **SIRCProduct._base_properties diff --git a/asf_search/Products/SMAPProduct.py b/asf_search/Products/SMAPProduct.py index b711a416..f78f00e0 100644 --- a/asf_search/Products/SMAPProduct.py +++ b/asf_search/Products/SMAPProduct.py @@ -1,4 +1,5 @@ import copy +from typing import Dict from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import try_parse_float @@ -10,14 +11,13 @@ class SMAPProduct(ASFProduct): 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **SMAPProduct._base_properties diff --git a/asf_search/Products/UAVSARProduct.py b/asf_search/Products/UAVSARProduct.py index b11a5629..73acd812 100644 --- a/asf_search/Products/UAVSARProduct.py +++ b/asf_search/Products/UAVSARProduct.py @@ -1,4 +1,5 @@ import copy +from typing import Dict from asf_search import ASFProduct, ASFSession from asf_search.CMR.translate import try_parse_float @@ -10,14 +11,13 @@ class UAVSARProduct(ASFProduct): 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, } - def __init__(self, args: dict = {}, session: ASFSession = ASFSession()): + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @staticmethod - def get_property_paths() -> dict: + def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **UAVSARProduct._base_properties diff --git a/asf_search/export/jsonlite.py b/asf_search/export/jsonlite.py index e150bef0..8f581cfd 100644 --- a/asf_search/export/jsonlite.py +++ b/asf_search/export/jsonlite.py @@ -100,8 +100,7 @@ def getItem(self, p): if p[i] == 'NA' or p[i] == '': p[i] = None try: - if p.get('offNadirAngle'): - if float(p['offNadirAngle']) < 0: + if p.get('offNadirAngle') is not None and float(p['offNadirAngle']) < 0: p['offNadirAngle'] = None except TypeError: pass diff --git a/asf_search/export/kml.py b/asf_search/export/kml.py index 34e25681..223a2714 100644 --- a/asf_search/export/kml.py +++ b/asf_search/export/kml.py @@ -1,5 +1,6 @@ import inspect from types import GeneratorType +from typing import Dict from asf_search import ASF_LOGGER from asf_search.export.metalink import MetalinkStreamArray import xml.etree.ElementTree as ETree @@ -133,7 +134,7 @@ def getItem(self, p): return ETree.tostring(placemark, encoding='unicode').replace('&', '&') # Helper method for getting additional fields in
    tag - def metadata_fields(self, item: dict): + def metadata_fields(self, item: Dict): required = { 'Processing type: ': item['processingTypeDisplay'], 'Frame: ': item['frameNumber'], diff --git a/asf_search/health/health.py b/asf_search/health/health.py index 4d08dea2..f4f77a93 100644 --- a/asf_search/health/health.py +++ b/asf_search/health/health.py @@ -1,9 +1,10 @@ +from typing import Dict import requests import json import asf_search.constants -def health(host: str = None) -> dict: +def health(host: str = None) -> Dict: """ Checks basic connectivity to and health of the ASF SearchAPI. diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index c036f209..f7c98742 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -1,5 +1,5 @@ import logging -from typing import Generator, Union, Sequence, Tuple, List +from typing import Dict, Generator, Union, Sequence, Tuple, List from copy import copy from requests.exceptions import HTTPError from requests import ReadTimeout, Response @@ -121,7 +121,7 @@ def search_generator( wait=wait_fixed(2), stop=stop_after_attempt(3), ) -def query_cmr(session: ASFSession, url: str, translated_opts: dict, sub_query_count: int): +def query_cmr(session: ASFSession, url: str, translated_opts: Dict, sub_query_count: int): response = get_page(session=session, url=url, translated_opts=translated_opts) items = [as_ASFProduct(f, session=session) for f in response.json()['items']] @@ -147,7 +147,7 @@ def process_page(items: List[ASFProduct], max_results: int, subquery_max_results wait=wait_exponential(multiplier=1, min=3, max=10), # Wait 2^x * 1 starting with 3 seconds, max 10 seconds between retries stop=stop_after_attempt(3), ) -def get_page(session: ASFSession, url: str, translated_opts: list) -> Response: +def get_page(session: ASFSession, url: str, translated_opts: List) -> Response: try: response = session.post(url=url, data=translated_opts, timeout=INTERNAL.CMR_TIMEOUT) response.raise_for_status() @@ -233,46 +233,77 @@ def set_platform_alias(opts: ASFSearchOptions): opts.platform = list(set(platform_list)) -def as_ASFProduct(item: dict, session: ASFSession) -> ASFProduct: - shortName = ASFProduct.umm_get(item['umm'], 'CollectionReference', 'ShortName') +def as_ASFProduct(item: Dict, session: ASFSession) -> ASFProduct: + """ Returns the granule umm as the corresponding ASFProduct subclass, + or ASFProduct if no equivalent is found + + :param item: the granule umm json + :param session: the session used to query CMR for the product + + :returns the granule as an object of type ASFProduct + """ + product_type_key = _get_product_type_key(item) - # ALOS - if shortName is None: - shortName = ASFProduct.umm_get(item['umm'], 'Platforms', 0, 'ShortName') - if shortName == 'SENTINEL-1A': - if 'Sentinel-1 Interferogram' in ASFProduct.umm_get(item['umm'], 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0): - shortName = 'ARIA S1 GUNW' - # print(shortName) + # if there's a direct entry in our dataset to product type dict + if (subclass := dataset_to_product_types.get(product_type_key)) is not None: + return subclass(item, session=session) + # or if the key matches one of the shortnames in any of our datasets for dataset, collections in dataset_collections.items(): - if shortName in collections.keys() or shortName == dataset: - return datset_product_types.get(dataset)(item, session=session) + if collections.get(product_type_key) is not None: + return dataset_to_product_types.get(dataset)(item, session=session) - if shortName in datset_product_types.keys(): - return datset_product_types.get(shortName)(item, session=session) return ASFProduct(item, session=session) +def _get_product_type_key(item: Dict) -> str: + """Match the umm response to the right ASFProduct subclass by returning one of the following: + 1. collection shortName (Ideal case) + 2. platform_shortName (Fallback) + - special case: Aria S1 GUNW + """ + collection_shortName = ASFProduct.umm_get(item['umm'], 'CollectionReference', 'ShortName') + + if collection_shortName is None: + platform_shortname = ASFProduct.umm_get(item['umm'], 'Platforms', 0, 'ShortName') + if platform_shortname in ['SENTINEL-1A', 'SENTINEL-1B']: + asf_platform = ASFProduct.umm_get(item['umm'], 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0) + if 'Sentinel-1 Interferogram' in asf_platform: + return 'ARIA S1 GUNW' + + return platform_shortname + + return collection_shortName +# Maps datasets from DATASET.py and collection/platform shortnames to ASFProduct subclasses +dataset_to_product_types = { + 'SENTINEL-1': ASFProductType.S1Product, + 'OPERA-S1': ASFProductType.OPERAS1Product, + 'SLC-BURST': ASFProductType.S1BURSTProduct, + + 'ALOS': ASFProductType.ALOSProduct, + + 'SIR-C': ASFProductType.SIRCProduct, + 'STS-59': ASFProductType.SIRCProduct, + 'STS-68': ASFProductType.SIRCProduct, + + 'ARIA S1 GUNW': ASFProductType.ARIAS1GUNWProduct, + + 'SMAP': ASFProductType.SMAPProduct, + + 'UAVSAR': ASFProductType.UAVSARProduct, + 'G-III': ASFProductType.UAVSARProduct, + + 'RADARSAT-1': ASFProductType.RadarsatProduct, + + 'ERS': ASFProductType.ERSProduct, + 'ERS-1': ASFProductType.ERSProduct, + 'ERS-2': ASFProductType.ERSProduct, + + 'JERS-1': ASFProductType.JERSProduct, + + 'AIRSAR': ASFProductType.AIRSARProduct, + 'DC-8': ASFProductType.AIRSARProduct, -datset_product_types = { - 'SENTINEL-1': ASFProductType.S1Product, - 'OPERA-S1': ASFProductType.OPERAS1Product, - 'SLC-BURST': ASFProductType.S1BURSTProduct, - 'ALOS': ASFProductType.ALOSProduct, - 'SIR-C': ASFProductType.SIRCProduct, - 'STS-59': ASFProductType.SIRCProduct, - 'STS-68': ASFProductType.SIRCProduct, - 'ARIA S1 GUNW': ASFProductType.ARIAS1GUNWProduct, - 'SMAP': ASFProductType.SMAPProduct, - 'UAVSAR': ASFProductType.UAVSARProduct, - 'G-III': ASFProductType.UAVSARProduct, - 'RADARSAT-1': ASFProductType.RadarsatProduct, - 'ERS': ASFProductType.ERSProduct, - 'ERS-1': ASFProductType.ERSProduct, - 'ERS-2': ASFProductType.ERSProduct, - 'JERS-1': ASFProductType.JERSProduct, - 'AIRSAR': ASFProductType.AIRSARProduct, - 'DC-8': ASFProductType.AIRSARProduct, - 'SEASAT': ASFProductType.SEASATProduct, - 'SEASAT 1': ASFProductType.SEASATProduct - } \ No newline at end of file + 'SEASAT': ASFProductType.SEASATProduct, + 'SEASAT 1': ASFProductType.SEASATProduct +} diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index f2f29fdf..32a8d68b 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -157,13 +157,14 @@ "from typing import Union\n", "from asf_search import ASFSearchOptions, ASFSession\n", "from asf_search.ASFSearchOptions import ASFSearchOptions\n", + "from typing import Dict\n", "\n", "class MyCustomS1Subclass(asf.S1Product):\n", " def __init__(\n", " #default ASFProduct arguments\n", - " self, args: dict = {}, session: ASFSession = ASFSession(), \n", + " self, args: Dict = {}, session: ASFSession = ASFSession(), \n", " #custom properties\n", - " custom_properties: dict = {}\n", + " custom_properties: Dict = {}\n", " ):\n", " super().__init__(args, session)\n", "\n", @@ -171,11 +172,11 @@ " self.custom_properties = custom_properties\n", " \n", " # write custom methods\n", - " def as_umm_json(self) -> dict:\n", + " def as_umm_json(self) -> Dict:\n", " return { 'umm': self.umm, 'meta': self.meta }\n", " \n", " # Override built in ASFProduct methods, like `geojson()`, `get_stack_opts()`, or `get_default_baseline_product_type()`\n", - " def geojson(self) -> dict:\n", + " def geojson(self) -> Dict:\n", " output = {\n", " **super().geojson()\n", " }\n", diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index 420d68a9..ab64ecf1 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -51,7 +51,7 @@ def run_test_valid_state_vectors(reference, output): if reference != None: product = as_ASFProduct(reference, ASFSession()) clear_baseline(reference, product) - assert output == product.valid_state_vectors() + assert output == product.is_valid_reference() return def clear_baseline(resource, product: ASFProduct): From 88bb66f065532db7dc17bd2a649333917388dbf9 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 17 Jan 2024 16:52:30 -0900 Subject: [PATCH 80/95] adds offNadirAngle field for kml and csv output parity with SearchAPI --- asf_search/export/csv.py | 1 + asf_search/export/kml.py | 1 + 2 files changed, 2 insertions(+) diff --git a/asf_search/export/csv.py b/asf_search/export/csv.py index 8a86d19a..575e7320 100644 --- a/asf_search/export/csv.py +++ b/asf_search/export/csv.py @@ -20,6 +20,7 @@ ('doppler', ['AdditionalAttributes', ('Name', 'DOPPLER'), 'Values', 0]), ('sizeMB', ['DataGranule', 'ArchiveAndDistributionInformation', 0, 'Size']), ('insarStackSize', ['AdditionalAttributes', ('Name', 'INSAR_STACK_SIZE'), 'Values', 0]), + ('offNadirAngle', ['AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0]) ] fieldnames = ( diff --git a/asf_search/export/kml.py b/asf_search/export/kml.py index 223a2714..57f6d638 100644 --- a/asf_search/export/kml.py +++ b/asf_search/export/kml.py @@ -13,6 +13,7 @@ ('shape', ['SpatialExtent', 'HorizontalSpatialDomain', 'Geometry', 'GPolygons', 0, 'Boundary', 'Points']), ('thumbnailUrl', ['AdditionalAttributes', ('Name', 'THUMBNAIL_URL'), 'Values', 0]), ('faradayRotation', ['AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0]), + ('offNadirAngle', ['AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0]) ] def results_to_kml(results): From 115e0cef13d73b7383116766fadd8a2ee265295a Mon Sep 17 00:00:00 2001 From: William Horn Date: Thu, 18 Jan 2024 08:51:12 -0900 Subject: [PATCH 81/95] chore: fix whitespace to follow pep8 --- asf_search/ASFProduct.py | 83 ++++++++++++------------ asf_search/Products/ALOSProduct.py | 22 +++---- asf_search/Products/ARIAS1GUNWProduct.py | 3 +- asf_search/Products/ERSProduct.py | 23 +++---- asf_search/Products/JERSProduct.py | 26 ++++---- asf_search/Products/OPERAS1Product.py | 42 ++++++------ asf_search/Products/RadarsatProduct.py | 22 +++---- asf_search/Products/S1Product.py | 32 ++++----- 8 files changed, 128 insertions(+), 125 deletions(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 234a1ae6..4fbe7246 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -28,32 +28,32 @@ class ASFProduct: - geometry: - The geometry `{coordinates: [[lon, lat] ...], 'type': Polygon}` - baseline: - - used for spatio-temporal baseline stacking, stores state vectors/ascending node time/insar baseline values when available (Not set in base ASFProduct class) + - used for spatio-temporal baseline stacking, stores state vectors/ascending node time/insar baseline values when available (Not set in base ASFProduct class) - See `S1Product` or `ALOSProduct` `get_baseline_calc_properties()` methods for implementation examples - + Key methods: - `download()` - `stack()` - `remotezip()` - + """ @classmethod def get_classname(cls): return cls.__name__ - + class BaselineCalcType(Enum): """ Defines how asf-search will calculate perpendicular baseline for products of this subclass """ - NONE = 1 + NONE = 1 """Cannot be used in baseline calculations""" PRE_CALCULATED = 2 """Has pre-calculated insarBaseline value that will be used for perpendicular calculations""" CALCULATED = 3 """Uses position/velocity state vectors and ascending node time for perpendicular calculations""" - + baseline_type = BaselineCalcType.NONE _base_properties = { @@ -65,7 +65,7 @@ class BaselineCalcType(Enum): 'flightDirection': {'path': [ 'AdditionalAttributes', ('Name', 'ASCENDING_DESCENDING'), 'Values', 0]}, 'pathNumber': {'path': ['AdditionalAttributes', ('Name', 'PATH_NUMBER'), 'Values', 0], 'cast': try_parse_int}, 'processingLevel': {'path': [ 'AdditionalAttributes', ('Name', 'PROCESSING_TYPE'), 'Values', 0]}, - + # commonly used 'url': {'path': [ 'RelatedUrls', ('Type', 'GET DATA'), 'URL']}, 'startTime': {'path': [ 'TemporalExtent', 'RangeDateTime', 'BeginningDateTime']}, @@ -83,14 +83,14 @@ class BaselineCalcType(Enum): } """ _base_properties dictionary, mapping readable property names to paths and optional type casting - + entries are organized as such: - `PROPERTY_NAME`: The name the property should be called in `ASFProduct.properties` - `path`: the expected path in the CMR UMM json granule response as a list - `cast`: (optional): the optional type casting method - + Defining `_base_properties` in subclasses allows for defining custom properties or overiding existing ones. - See `S1Product.get_property_paths()` on how subclasses are expected to + See `S1Product.get_property_paths()` on how subclasses are expected to combine `ASFProduct._base_properties` with their own separately defined `_base_properties` """ @@ -132,14 +132,14 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, if filename is not None: multiple_files = ( - (fileType == FileDownloadType.ADDITIONAL_FILES and len(self.properties['additionalUrls']) > 1) + (fileType == FileDownloadType.ADDITIONAL_FILES and len(self.properties['additionalUrls']) > 1) or fileType == FileDownloadType.ALL_FILES ) if multiple_files: warnings.warn(f"Attempting to download multiple files for product, ignoring user provided filename argument \"{filename}\", using default.") else: default_filename = filename - + if session is None: session = self.session @@ -158,16 +158,17 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, for filename, url in urls: download_url(url=url, path=path, filename=filename, session=session) - def _get_additional_filenames_and_urls(self, - default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) - ) -> List[Tuple[str, str]]: + def _get_additional_filenames_and_urls( + self, + default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) + ) -> List[Tuple[str, str]]: return [(self._parse_filename_from_url(url), url) for url in self.properties['additionalUrls']] - + def _parse_filename_from_url(self, url: str) -> str: file_path = os.path.split(parse.urlparse(url).path) filename = file_path[1] return filename - + def stack( self, opts: ASFSearchOptions = None @@ -210,7 +211,7 @@ def centroid(self) -> Point: def remotezip(self, session: ASFSession) -> RemoteZip: """Returns a RemoteZip object which can be used to download a part of an ASFProduct's zip archive. (See example in examples/5-Download.ipynb) - + :param session: an authenticated ASFSession """ from .download.download import remotezip @@ -221,9 +222,9 @@ def _read_umm_property(self, umm: Dict, mapping: Dict) -> Any: value = self.umm_get(umm, *mapping['path']) if mapping.get('cast') is None: return value - + return self.umm_cast(mapping['cast'], value) - + def translate_product(self, item: Dict) -> Dict: """ Generates `properties` and `geometry` from the CMR UMM response @@ -250,25 +251,25 @@ def translate_product(self, item: Dict) -> Dict: # Fallbacks if properties.get('beamModeType') is None: properties['beamModeType'] = self.umm_get(umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - + if properties.get('platform') is None: properties['platform'] = self.umm_get(umm, 'Platforms', 0, 'ShortName') return {'geometry': geometry, 'properties': properties, 'type': 'Feature'} - # ASFProduct subclasses define extra/override param key + UMM pathing here + # ASFProduct subclasses define extra/override param key + UMM pathing here @staticmethod def get_property_paths() -> Dict: """ Returns _base_properties of class, subclasses such as `S1Product` (or user provided subclasses) can override this to - define which properties they want in their subclass's properties dict. - + define which properties they want in their subclass's properties dict. + (See `S1Product.get_property_paths()` for example of combining _base_properties of multiple classes) - + :returns dictionary, {`PROPERTY_NAME`: {'path': [umm, path, to, value], 'cast (optional)': Callable_to_cast_value}, ...} """ return ASFProduct._base_properties - + def get_baseline_calc_properties(self) -> Dict: """ Used by subclasses to assign baseline values to `ASFProduct.baseline` property. @@ -280,7 +281,7 @@ def is_valid_reference(self) -> bool: Used for baseline stack reference validation, see S1Product or AlosProduct versions for example implementations """ return False - + def get_sort_keys(self) -> Tuple: """ Returns tuple of primary and secondary date values used for sorting final search results @@ -293,7 +294,7 @@ def get_default_baseline_product_type() -> Union[str, None]: Returns the product type to search for when building a baseline stack. """ return None - + @final @staticmethod def umm_get(item: Dict, *args): @@ -301,15 +302,15 @@ def umm_get(item: Dict, *args): Used to search for values in CMR UMM :param item: the umm dict returned from CMR - :param *args: the expected path to the value - + :param *args: the expected path to the value + Example case: "I want to grab the polarization from the granule umm" ``` item = { 'AdditionalAttributes': [ - { - 'Name': 'POLARIZATION', + { + 'Name': 'POLARIZATION', 'Values': ['VV', 'VH'] }, ... @@ -325,31 +326,31 @@ def umm_get(item: Dict, *args): ``` - `'AdditionalAttributes'` acts like item['AdditionalAttributes'], which is a list of dictionaries - + - Since `AdditionalAttributes` is a LIST of dictionaries, we search for a dict with the key value pair, `('Name', 'POLARIZATION')` - If found, we try to access that dictionary's `Values` key - Since `Values` is a list, we can access the first index `0` (in this case, 'VV') - + --- If you want more of the umm, simply reduce how deep you search: Example: "I need BOTH polarizations (`OPERAS1Product` does this, noticed the omitted `0`) - + ``` 'AdditionalAttributes', ('Name', 'POLARIZATION'), 'Values' result: ['VV', 'VH'] ``` --- - + Example: "I need the ENTIRE POLARIZATION dict" - + ``` 'AdditionalAttributes', ('Name', 'POLARIZATION') - result: { - 'Name': 'POLARIZATION', + result: { + 'Name': 'POLARIZATION', 'Values': ['VV', 'VH'] } ``` @@ -357,7 +358,7 @@ def umm_get(item: Dict, *args): --- ADVANCED: - Sometimes there are multiple dictionaries in a list that have the same key value pair we're searching for + Sometimes there are multiple dictionaries in a list that have the same key value pair we're searching for (See `OPERAS1Product` umm under `RelatedUrls`). This means we can miss values since we're only grabbing the first match depending on how the umm is organized. There is a way to get ALL data that matches our key value criteria. @@ -399,7 +400,7 @@ def umm_get(item: Dict, *args): if item in [None, 'NA', 'N/A', '']: item = None return item - + @final @staticmethod def umm_cast(f, v): diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index c9216122..4ed66b8e 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -5,6 +5,7 @@ from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError + class ALOSProduct(ASFProduct): """ Used for ALOS Palsar and Avnir dataset products @@ -13,21 +14,21 @@ class ALOSProduct(ASFProduct): """ _base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, - 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, - 'offNadirAngle': {'path': [ 'AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, - 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'faradayRotation': {'path': ['AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, + 'offNadirAngle': {'path': ['AdditionalAttributes', ('Name', 'OFF_NADIR_ANGLE'), 'Values', 0], 'cast': try_parse_float}, + 'bytes': {'path': ['AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() if self.properties.get('groupID') is None: self.properties['groupID'] = self.properties['sceneName'] - + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) @@ -42,7 +43,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - + stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts @@ -52,18 +53,17 @@ def get_property_paths() -> Dict: **ASFProduct.get_property_paths(), **ALOSProduct._base_properties } - + def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - + return True - + @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ Returns the product type to search for when building a baseline stack. """ return PRODUCT_TYPE.L1_1 - \ No newline at end of file diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 04a06a09..60ad7b7f 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -2,6 +2,8 @@ from asf_search import ASFSession from asf_search.Products import S1Product from asf_search.CMR.translate import try_parse_float + + class ARIAS1GUNWProduct(S1Product): """ Used for ARIA S1 GUNW Products @@ -29,4 +31,3 @@ def get_property_paths() -> Dict: **S1Product.get_property_paths(), **ARIAS1GUNWProduct._base_properties } - diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 1ad676bb..1bd025e5 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,10 +1,11 @@ import copy from typing import Dict, Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import try_parse_float, try_round_float +from asf_search.CMR.translate import try_round_float from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError + class ERSProduct(ASFProduct): """ Used for ERS-1 and ERS-2 products @@ -13,11 +14,11 @@ class ERSProduct(ASFProduct): ASF ERS-2 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-2/ """ _base_properties = { - 'bytes': {'path': [ 'AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, - 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0]}, 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0]}, - 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, - 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'bytes': {'path': ['AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, + 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0]}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, } @@ -26,7 +27,7 @@ class ERSProduct(ASFProduct): def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) @@ -40,12 +41,13 @@ def get_baseline_calc_properties(self) -> Dict: def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - + stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts - + @staticmethod def get_property_paths() -> Dict: return { @@ -57,13 +59,12 @@ def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - + return True - + @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ Returns the product type to search for when building a baseline stack. """ return PRODUCT_TYPE.L0 - \ No newline at end of file diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 06d42c61..2e99c764 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,28 +1,28 @@ import copy from typing import Dict, Union from asf_search import ASFSearchOptions, ASFSession, ASFProduct -from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError + class JERSProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/jers-1/ """ _base_properties = { - 'browse': { 'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, - 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, - 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, - 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, + 'groupID': {'path': ['AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) @@ -41,27 +41,25 @@ def get_property_paths() -> Dict: } def get_stack_opts(self, opts: ASFSearchOptions = None): - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = self.get_default_baseline_product_type() + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - + stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts - + def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - + return True - + @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ Returns the product type to search for when building a baseline stack. """ return PRODUCT_TYPE.L0 - \ No newline at end of file diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 451d9d80..c08e0340 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -2,14 +2,15 @@ from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product + class OPERAS1Product(S1Product): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/opera/ """ _base_properties = { 'centerLat': {'path': []}, # Opera products lacks these fields - 'centerLon': {'path': []}, - 'frameNumber': {'path': []}, + 'centerLon': {'path': []}, + 'frameNumber': {'path': []}, 'operaBurstID': {'path': ['AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0]}, 'validityStartDate': {'path': ['TemporalExtent', 'SingleDateTime']}, 'bytes': {'path': ['DataGranule', 'ArchiveAndDistributionInformation']}, @@ -21,29 +22,31 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = None - + self.properties['beamMode'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'BEAM_MODE'), 'Values', 0) - + accessUrls = [] if related_data_urls := self.umm_get(self.umm, 'RelatedUrls', ('Type', [('GET DATA', 'URL')]), 0): accessUrls.extend(related_data_urls) if related_metadata_urls := self.umm_get(self.umm, 'RelatedUrls', ('Type', [('EXTENDED METADATA', 'URL')]), 0): accessUrls.extend(related_metadata_urls) - - self.properties['additionalUrls'] = sorted([url for url in list(set(accessUrls)) if not url.endswith('.md5') - and not url.startswith('s3://') - and not 's3credentials' in url - and not url.endswith('.png') - and url != self.properties['url']]) - + + self.properties['additionalUrls'] = sorted([ + url for url in list(set(accessUrls)) if not url.endswith('.md5') + and not url.startswith('s3://') + and 's3credentials' not in url + and not url.endswith('.png') + and url != self.properties['url'] + ]) + self.properties['operaBurstID'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'OPERA_BURST_ID'), 'Values', 0) self.properties['bytes'] = {entry['Name']: {'bytes': entry['SizeInBytes'], 'format': entry['Format']} for entry in self.properties['bytes']} - - center = self.centroid() + + center = self.centroid() self.properties['centerLat'] = center.y self.properties['centerLon'] = center.x - + self.properties.pop('frameNumber') if (processingLevel := self.properties['processingLevel']) in ['RTC', 'RTC-STATIC']: @@ -51,8 +54,7 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): if processingLevel == 'RTC': self.properties['noiseCorrection'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'NOISE_CORRECTION'), 'Values', 0) self.properties['postProcessingFilter'] = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'POST_PROCESSING_FILTER'), 'Values', 0) - - + def get_stack_opts(self, opts: ASFSearchOptions = ASFSearchOptions()) -> ASFSearchOptions: return opts @@ -62,14 +64,14 @@ def get_property_paths() -> Dict: **S1Product.get_property_paths(), **OPERAS1Product._base_properties } - + def is_valid_reference(self): return False - + def get_sort_keys(self): keys = super().get_sort_keys() if keys[0] is None: keys = self.properties.get('validityStartDate'), keys[1] - - return keys \ No newline at end of file + + return keys diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 78c61722..2ca070b0 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -5,23 +5,24 @@ from asf_search.constants import PRODUCT_TYPE from asf_search.exceptions import ASFBaselineError + class RadarsatProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/radarsat-1/ """ _base_properties = { - 'faradayRotation': {'path': [ 'AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, - 'insarStackId': {'path': [ 'AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, - 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'faradayRotation': {'path': ['AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, + 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} } baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() - + def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) @@ -40,28 +41,27 @@ def get_stack_opts(self, if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - + stack_opts.insarStackId = self.properties['insarStackId'] return stack_opts - + @staticmethod def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), **RadarsatProduct._base_properties } - + def is_valid_reference(self): # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) if 'insarBaseline' not in self.baseline: raise ValueError('No baseline values available for precalculated dataset') - + return True - + @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ Returns the product type to search for when building a baseline stack. """ return PRODUCT_TYPE.L0 - \ No newline at end of file diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 0a67fd2a..010dca79 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -5,6 +5,7 @@ from asf_search.constants import PLATFORM from asf_search.constants import PRODUCT_TYPE + class S1Product(ASFProduct): """ The S1Product classes covers most Sentinel-1 Products @@ -25,13 +26,12 @@ class S1Product(ASFProduct): """ baseline_type = ASFProduct.BaselineCalcType.CALCULATED - + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) if self._has_baseline(): self.baseline = self.get_baseline_calc_properties() - def _has_baseline(self) -> bool: baseline = self.get_baseline_calc_properties() @@ -48,15 +48,15 @@ def get_baseline_calc_properties(self) -> Dict: :returns properties required for SLC baseline stack calculations """ ascendingNodeTime = self.umm_cast( - self._parse_timestamp, + self._parse_timestamp, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'ASC_NODE_TIME'), 'Values', 0) ) - + return { 'stateVectors': self.get_state_vectors(), 'ascendingNodeTime': ascendingNodeTime } - + def get_state_vectors(self) -> Dict: """ Used in spatio-temporal perpendicular baseline calculations for non-pre-calculated stacks @@ -69,7 +69,7 @@ def get_state_vectors(self) -> Dict: sv_post_position = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_POSITION_POST'), 'Values', 0) sv_pre_velocity = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_PRE'), 'Values', 0) sv_post_velocity = self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'SV_VELOCITY_POST'), 'Values', 0) - + positions['prePosition'], positions['prePositionTime'] = self.umm_cast(self._parse_state_vector, sv_pre_position) positions['postPosition'], positions['postPositionTime'] = self.umm_cast(self._parse_state_vector, sv_post_position) velocities['preVelocity'], velocities['preVelocityTime'] = self.umm_cast(self._parse_state_vector, sv_pre_velocity) @@ -79,41 +79,41 @@ def get_state_vectors(self) -> Dict: 'positions': positions, 'velocities': velocities } - + def _parse_timestamp(self, timestamp: str) -> Optional[str]: if timestamp is None: return None - + return timestamp if timestamp.endswith('Z') else f'{timestamp}Z' - + def _parse_state_vector(self, state_vector: str) -> Tuple[Optional[List], Optional[str]]: if state_vector is None: return None, None velocity = list(map(float, state_vector.split(',')[:3])) timestamp = self._parse_timestamp(state_vector.split(',')[-1]) - + return velocity, timestamp def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ Returns the search options asf-search will use internally to build an SLC baseline stack from - - :param opts: additional criteria for limiting + + :param opts: additional criteria for limiting :returns ASFSearchOptions used for build Sentinel-1 SLC Stack """ stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - + stack_opts.processingLevel = self.get_default_baseline_product_type() stack_opts.beamMode = [self.properties['beamModeType']] stack_opts.flightDirection = self.properties['flightDirection'] - stack_opts.relativeOrbit = [int(self.properties['pathNumber'])] # path + stack_opts.relativeOrbit = [int(self.properties['pathNumber'])] # path stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] stack_opts.polarization = ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'] stack_opts.intersectsWith = self.centroid().wkt - + return stack_opts - + @staticmethod def get_property_paths() -> Dict: return { From 16a0c799e53a20764230fa98c2627d9905d3d358 Mon Sep 17 00:00:00 2001 From: William Horn Date: Thu, 18 Jan 2024 08:51:56 -0900 Subject: [PATCH 82/95] chore: small refactors for readability --- asf_search/Products/ALOSProduct.py | 12 ++++---- asf_search/Products/ERSProduct.py | 16 +++++------ asf_search/Products/JERSProduct.py | 16 +++++------ asf_search/Products/RadarsatProduct.py | 17 ++++++----- asf_search/Products/S1Product.py | 40 +++++++++++++++----------- 5 files changed, 54 insertions(+), 47 deletions(-) diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index 4ed66b8e..c64f8146 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -31,11 +31,13 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is not None: - return { - 'insarBaseline': insarBaseline - } + + if insarBaseline is None: + return + + return { + 'insarBaseline': insarBaseline + } def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 1bd025e5..b6ba2621 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -30,14 +30,14 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is not None: - return { - 'insarBaseline': insarBaseline - } - - return None - + + if insarBaseline is None: + return None + + return { + 'insarBaseline': insarBaseline + } + def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 2e99c764..26f81de8 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -25,14 +25,14 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is not None: - return { - 'insarBaseline': insarBaseline - } - - return None - + + if insarBaseline is None: + return + + return { + 'insarBaseline': insarBaseline + } + @staticmethod def get_property_paths() -> Dict: return { diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 2ca070b0..225cbd55 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -25,16 +25,15 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): def get_baseline_calc_properties(self) -> Dict: insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is not None: - return { - 'insarBaseline': insarBaseline - } - - return None - def get_stack_opts(self, - opts: ASFSearchOptions = None): + if insarBaseline is None: + return + + return { + 'insarBaseline': insarBaseline + } + + def get_stack_opts(self, opts: ASFSearchOptions = None): stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) stack_opts.processingLevel = self.get_default_baseline_product_type() diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 010dca79..1b1492c7 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -35,14 +35,13 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): def _has_baseline(self) -> bool: baseline = self.get_baseline_calc_properties() - - if baseline is None: - return False - if None in baseline['stateVectors']['positions'].values() and len(baseline['stateVectors'].items()) > 0: - return False - - return True - + + return ( + baseline is not None and + None not in baseline['stateVectors']['positions'].values() and + len(baseline['stateVectors'].items()) <= 0 + ) + def get_baseline_calc_properties(self) -> Dict: """ :returns properties required for SLC baseline stack calculations @@ -89,8 +88,8 @@ def _parse_timestamp(self, timestamp: str) -> Optional[str]: def _parse_state_vector(self, state_vector: str) -> Tuple[Optional[List], Optional[str]]: if state_vector is None: return None, None - - velocity = list(map(float, state_vector.split(',')[:3])) + + velocity = [float(val) for val in state_vector.split(',')[:3]] timestamp = self._parse_timestamp(state_vector.split(',')[-1]) return velocity, timestamp @@ -109,7 +108,12 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: stack_opts.flightDirection = self.properties['flightDirection'] stack_opts.relativeOrbit = [int(self.properties['pathNumber'])] # path stack_opts.platform = [PLATFORM.SENTINEL1A, PLATFORM.SENTINEL1B] - stack_opts.polarization = ['HH','HH+HV'] if self.properties['polarization'] in ['HH','HH+HV'] else ['VV', 'VV+VH'] + + if self.properties['polarization'] in ['HH', 'HH+HV']: + stack_opts.polarization = ['HH', 'HH+HV'] + else: + stack_opts.polarization = ['VV', 'VV+VH'] + stack_opts.intersectsWith = self.centroid().wkt return stack_opts @@ -123,12 +127,14 @@ def get_property_paths() -> Dict: def is_valid_reference(self) -> bool: """perpendicular baselines are not pre-calculated for S1 products and require position/velocity state vectors to calculate""" - for key in ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime']: - if key not in self.baseline['stateVectors']['positions'] or self.baseline['stateVectors']['positions'][key] == None: - return False - - return True - + keys = ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime'] + + return all([ + key not in self.baseline['stateVectors']['positions'] or + self.baseline['stateVectors']['positions'][key] is None + for key in keys + ]) + @staticmethod def get_default_baseline_product_type() -> str: """ From 7ed6fa16a2a61ef9bf9c701b5843a84f7d11c5af Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 18 Jan 2024 10:29:28 -0900 Subject: [PATCH 83/95] tweaks notebook some more --- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 53 ++++++++++++------- 1 file changed, 33 insertions(+), 20 deletions(-) diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index fb595547..03b9f026 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -154,8 +154,8 @@ "outputs": [], "source": [ "import copy\n", - "from typing import Type, Union\n", - "from asf_search import ASFSearchOptions, ASFSession\n", + "from typing import List, Type, Union, Dict\n", + "from asf_search import ASFSearchOptions, ASFSession, ASFSearchResults\n", "from asf_search.ASFSearchOptions import ASFSearchOptions\n", "from asf_search.CMR.translate import try_parse_int\n", "from datetime import datetime\n", @@ -193,11 +193,12 @@ " }\n", " \"\"\"\n", "\n", - " # write custom methods\n", + " # CUSTOM CLASS METHODS\n", + " # Return\n", " def as_umm_json(self) -> Dict:\n", " return { 'umm': self.umm, 'meta': self.meta }\n", " \n", - " # Or Override built in ASFProduct methods, like `geojson()`, `get_stack_opts()`, or `get_default_baseline_product_type()`\n", + " # CLASS OVERRIDE METHODS\n", " \n", " # This override of `geojson()` includes the product's state vectors in the final geojson output, \n", " # along with a custom class field timestamp and what version of asf-search was used at runtime\n", @@ -218,13 +219,16 @@ " **MyCustomS1Subclass._base_properties\n", " }\n", " \n", - " # This method normally stacks the current product\n", + " # ASFProduct.stack() normally stacks the current product\n", " # in this version we search for every SLC-BURST product that\n", - " # overlaps the given area, and return a list of burst stacks\n", + " # overlaps the given area with the same source scene, \n", + " # and return a list of burst stacks\n", + " # if no bursts are found, we fall back to building a regular stack\n", " def stack(self, \n", - " opts: ASFSearchOptions = None,\n", - " aoi: str = None,\n", - " useSubclass: Type[asf.ASFProduct] = None):\n", + " opts: ASFSearchOptions = None,\n", + " useSubclass: Type[asf.ASFProduct] = None,\n", + " aoi: str = None\n", + " ) -> Union[ASFSearchResults, List[ASFSearchResults]]:\n", " \n", " bursts = asf.search(\n", " groupID=self.properties['groupID'], \n", @@ -232,7 +236,7 @@ " intersectsWith=aoi if aoi is not None else opts.intersectsWith\n", " )\n", "\n", - " if len(bursts) == 0: # use default S1Product version if there's no SLC_BURST\n", + " if len(bursts) == 0: # build a regular stack of SLCs if there's no SLC-BURST\n", " return super().stack(opts=opts, useSubclass=useSubclass)\n", " \n", " return [burst.stack(opts=opts) for burst in bursts]\n", @@ -246,7 +250,17 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Notice the `customProperties` field in the output from `geojson()`." + "Notice the `timestamp`, `ASFSearchVersion`, `stateVectors`, and `esaFrame` fields in the output from `geojson()`.\n", + "Below is a comparison of properties between the built-in `S1Product` and our `customS1SubclassProduct`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "compare_properties(s1, customS1SubclassProduct)" ] }, { @@ -260,6 +274,14 @@ "customStack" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notice instead of a stack of `MyCustomS1Subclass` products we have a list of `S1BURSTProduct` stacks!\n", + "Below is a breakdown of this list of stacks:" + ] + }, { "cell_type": "code", "execution_count": null, @@ -276,15 +298,6 @@ "view_stack_of_stacks(customStack)" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "compare_properties(s1, customS1SubclassProduct)" - ] - }, { "cell_type": "markdown", "metadata": {}, From 4ab884b613e988c4805982ccddb892190f28cebf Mon Sep 17 00:00:00 2001 From: William Horn Date: Thu, 18 Jan 2024 12:02:18 -0900 Subject: [PATCH 84/95] feature: add ASFBaselineProduct subclass --- .gitignore | 2 + asf_search/ASFBaselineProduct.py | 75 +++++++++++++++++++ asf_search/ASFProduct.py | 38 +--------- asf_search/Products/ALOSProduct.py | 50 +++---------- asf_search/Products/ERSProduct.py | 40 +--------- asf_search/Products/JERSProduct.py | 54 +++---------- asf_search/Products/RadarsatProduct.py | 43 ++--------- asf_search/Products/S1Product.py | 26 +++---- asf_search/Products/SEASATProduct.py | 1 + asf_search/__init__.py | 3 +- asf_search/baseline/stack.py | 18 +++-- asf_search/search/search_generator.py | 50 +++++++------ ...vanced-Custom-ASFProduct-Subclassing.ipynb | 2 +- tests/BaselineSearch/Stack/test_stack.py | 24 +++--- tests/pytest-managers.py | 51 ++++++------- tests/yml_tests/test_stack.yml | 5 -- 16 files changed, 199 insertions(+), 283 deletions(-) create mode 100644 asf_search/ASFBaselineProduct.py diff --git a/.gitignore b/.gitignore index 2dbe033b..0a85e8e1 100644 --- a/.gitignore +++ b/.gitignore @@ -130,3 +130,5 @@ dmypy.json # VS Code .vscode/ +search_results.csv +search_results.metalink diff --git a/asf_search/ASFBaselineProduct.py b/asf_search/ASFBaselineProduct.py new file mode 100644 index 00000000..85691e9b --- /dev/null +++ b/asf_search/ASFBaselineProduct.py @@ -0,0 +1,75 @@ +from enum import Enum +import copy +from typing import Dict, Union +from asf_search import ASFSession, ASFProduct +from asf_search.ASFSearchOptions import ASFSearchOptions +from asf_search.exceptions import ASFBaselineError + + +class ASFBaselineProduct(ASFProduct): + """ + Used for ERS-1 and ERS-2 products + + ASF ERS-1 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-1/ + ASF ERS-2 Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/ers-2/ + """ + _base_properties = { + } + + class BaselineCalcType(Enum): + """ + Defines how asf-search will calculate perpendicular baseline for products of this subclass + """ + + """Cannot be used in baseline calculations""" + PRE_CALCULATED = 0 + """Has pre-calculated insarBaseline value that will be used for perpendicular calculations""" + CALCULATED = 1 + """Uses position/velocity state vectors and ascending node time for perpendicular calculations""" + + baseline_type = BaselineCalcType.PRE_CALCULATED + + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): + super().__init__(args, session) + self.baseline = self.get_baseline_calc_properties() + + def get_baseline_calc_properties(self) -> Dict: + insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) + + if insarBaseline is None: + return None + + return { + 'insarBaseline': insarBaseline + } + + def get_stack_opts(self, opts: ASFSearchOptions = None): + stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) + stack_opts.processingLevel = self.get_default_baseline_product_type() + + if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: + raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') + + stack_opts.insarStackId = self.properties['insarStackId'] + return stack_opts + + @staticmethod + def get_property_paths() -> Dict: + return { + **ASFProduct.get_property_paths(), + **ASFBaselineProduct._base_properties + } + + def is_valid_reference(self): + # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) + if 'insarBaseline' not in self.baseline: + raise ValueError('No baseline values available for precalculated dataset') + + return True + + @staticmethod + def get_default_baseline_product_type() -> Union[str, None]: + """ + Returns the product type to search for when building a baseline stack. + """ + return None diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 4fbe7246..0f7eea21 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -1,6 +1,5 @@ -from enum import Enum import os -from typing import Any, Dict, Tuple, Union, List, final +from typing import Any, Dict, Tuple, List, final import warnings from shapely.geometry import shape, Point, Polygon, mapping import json @@ -15,6 +14,7 @@ from asf_search.download.file_download_type import FileDownloadType from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float + class ASFProduct: """ The ASFProduct class is the base class for search results from asf-search. @@ -42,20 +42,6 @@ class ASFProduct: def get_classname(cls): return cls.__name__ - class BaselineCalcType(Enum): - """ - Defines how asf-search will calculate perpendicular baseline for products of this subclass - """ - - NONE = 1 - """Cannot be used in baseline calculations""" - PRE_CALCULATED = 2 - """Has pre-calculated insarBaseline value that will be used for perpendicular calculations""" - CALCULATED = 3 - """Uses position/velocity state vectors and ascending node time for perpendicular calculations""" - - baseline_type = BaselineCalcType.NONE - _base_properties = { # min viable product 'centerLat': {'path': ['AdditionalAttributes', ('Name', 'CENTER_LAT'), 'Values', 0], 'cast': try_parse_float}, @@ -105,7 +91,6 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): self.baseline = None self.session = session - def __str__(self): return json.dumps(self.geojson(), indent=2, sort_keys=True) @@ -270,31 +255,12 @@ def get_property_paths() -> Dict: """ return ASFProduct._base_properties - def get_baseline_calc_properties(self) -> Dict: - """ - Used by subclasses to assign baseline values to `ASFProduct.baseline` property. - """ - return {} - - def is_valid_reference(self) -> bool: - """ - Used for baseline stack reference validation, see S1Product or AlosProduct versions for example implementations - """ - return False - def get_sort_keys(self) -> Tuple: """ Returns tuple of primary and secondary date values used for sorting final search results """ return (self.properties.get('stopTime'), self.properties.get('fileID', 'sceneName')) - @staticmethod - def get_default_baseline_product_type() -> Union[str, None]: - """ - Returns the product type to search for when building a baseline stack. - """ - return None - @final @staticmethod def umm_get(item: Dict, *args): diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index c64f8146..d9dc3510 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,12 +1,10 @@ -import copy from typing import Dict, Union -from asf_search import ASFSession, ASFProduct, ASFSearchOptions +from asf_search import ASFSession, ASFProduct, ASFBaselineProduct, ASFSearchOptions from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.constants import PRODUCT_TYPE -from asf_search.exceptions import ASFBaselineError -class ALOSProduct(ASFProduct): +class ALOSProduct(ASFBaselineProduct): """ Used for ALOS Palsar and Avnir dataset products @@ -20,52 +18,22 @@ class ALOSProduct(ASFProduct): 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } - baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) - self.baseline = self.get_baseline_calc_properties() if self.properties.get('groupID') is None: self.properties['groupID'] = self.properties['sceneName'] - def get_baseline_calc_properties(self) -> Dict: - insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is None: - return - - return { - 'insarBaseline': insarBaseline - } - - def get_stack_opts(self, opts: ASFSearchOptions = None): - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = self.get_default_baseline_product_type() - - if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts - - @staticmethod - def get_property_paths() -> Dict: - return { - **ASFProduct.get_property_paths(), - **ALOSProduct._base_properties - } - - def is_valid_reference(self): - # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) - if 'insarBaseline' not in self.baseline: - raise ValueError('No baseline values available for precalculated dataset') - - return True - @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ Returns the product type to search for when building a baseline stack. """ return PRODUCT_TYPE.L1_1 + + @staticmethod + def get_property_paths() -> Dict: + return { + **ASFBaselineProduct.get_property_paths(), + **ALOSProduct._base_properties + } diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index b6ba2621..19669fe8 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,12 +1,10 @@ -import copy from typing import Dict, Union -from asf_search import ASFSearchOptions, ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct from asf_search.CMR.translate import try_round_float from asf_search.constants import PRODUCT_TYPE -from asf_search.exceptions import ASFBaselineError -class ERSProduct(ASFProduct): +class ERSProduct(ASFBaselineProduct): """ Used for ERS-1 and ERS-2 products @@ -17,51 +15,21 @@ class ERSProduct(ASFProduct): 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0]}, 'bytes': {'path': ['AdditionalAttributes', ('Name', 'BYTES'), 'Values', 0], 'cast': try_round_float}, 'esaFrame': {'path': ['AdditionalAttributes', ('Name', 'CENTER_ESA_FRAME'), 'Values', 0]}, - 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } - baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) - self.baseline = self.get_baseline_calc_properties() - - def get_baseline_calc_properties(self) -> Dict: - insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is None: - return None - - return { - 'insarBaseline': insarBaseline - } - - def get_stack_opts(self, opts: ASFSearchOptions = None): - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = self.get_default_baseline_product_type() - - if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts @staticmethod def get_property_paths() -> Dict: return { - **ASFProduct.get_property_paths(), + **ASFBaselineProduct.get_property_paths(), **ERSProduct._base_properties } - def is_valid_reference(self): - # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) - if 'insarBaseline' not in self.baseline: - raise ValueError('No baseline values available for precalculated dataset') - - return True - @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 26f81de8..99574516 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,61 +1,22 @@ -import copy from typing import Dict, Union -from asf_search import ASFSearchOptions, ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct from asf_search.constants import PRODUCT_TYPE -from asf_search.exceptions import ASFBaselineError -class JERSProduct(ASFProduct): +class JERSProduct(ASFBaselineProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/jers-1/ """ _base_properties = { 'browse': {'path': ['RelatedUrls', ('Type', [('GET RELATED VISUALIZATION', 'URL')])]}, 'groupID': {'path': ['AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, - 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} + 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } - baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) - self.baseline = self.get_baseline_calc_properties() - - def get_baseline_calc_properties(self) -> Dict: - insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is None: - return - - return { - 'insarBaseline': insarBaseline - } - - @staticmethod - def get_property_paths() -> Dict: - return { - **ASFProduct.get_property_paths(), - **JERSProduct._base_properties - } - - def get_stack_opts(self, opts: ASFSearchOptions = None): - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = self.get_default_baseline_product_type() - - if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts - - def is_valid_reference(self): - # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) - if 'insarBaseline' not in self.baseline: - raise ValueError('No baseline values available for precalculated dataset') - - return True @staticmethod def get_default_baseline_product_type() -> Union[str, None]: @@ -63,3 +24,10 @@ def get_default_baseline_product_type() -> Union[str, None]: Returns the product type to search for when building a baseline stack. """ return PRODUCT_TYPE.L0 + + @staticmethod + def get_property_paths() -> Dict: + return { + **ASFBaselineProduct.get_property_paths(), + **JERSProduct._base_properties + } diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 225cbd55..9c35ed07 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,63 +1,30 @@ -import copy from typing import Dict, Union -from asf_search import ASFSearchOptions, ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE -from asf_search.exceptions import ASFBaselineError -class RadarsatProduct(ASFProduct): +class RadarsatProduct(ASFBaselineProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/radarsat-1/ """ _base_properties = { 'faradayRotation': {'path': ['AdditionalAttributes', ('Name', 'FARADAY_ROTATION'), 'Values', 0], 'cast': try_parse_float}, - 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, - 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]} + 'beamModeType': {'path': ['AdditionalAttributes', ('Name', 'BEAM_MODE_TYPE'), 'Values', 0]}, + 'insarStackId': {'path': ['AdditionalAttributes', ('Name', 'INSAR_STACK_ID'), 'Values', 0]}, } - baseline_type = ASFProduct.BaselineCalcType.PRE_CALCULATED - def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) - self.baseline = self.get_baseline_calc_properties() - - def get_baseline_calc_properties(self) -> Dict: - insarBaseline = self.umm_cast(float, self.umm_get(self.umm, 'AdditionalAttributes', ('Name', 'INSAR_BASELINE'), 'Values', 0)) - - if insarBaseline is None: - return - - return { - 'insarBaseline': insarBaseline - } - - def get_stack_opts(self, opts: ASFSearchOptions = None): - - stack_opts = (ASFSearchOptions() if opts is None else copy(opts)) - stack_opts.processingLevel = self.get_default_baseline_product_type() - - if self.properties.get('insarStackId') in [None, 'NA', 0, '0']: - raise ASFBaselineError(f'Requested reference product needs a baseline stack ID but does not have one: {self.properties["fileID"]}') - - stack_opts.insarStackId = self.properties['insarStackId'] - return stack_opts @staticmethod def get_property_paths() -> Dict: return { - **ASFProduct.get_property_paths(), + **ASFBaselineProduct.get_property_paths(), **RadarsatProduct._base_properties } - def is_valid_reference(self): - # we don't stack at all if any of stack is missing insarBaseline, unlike stacking S1 products(?) - if 'insarBaseline' not in self.baseline: - raise ValueError('No baseline values available for precalculated dataset') - - return True - @staticmethod def get_default_baseline_product_type() -> Union[str, None]: """ diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 1b1492c7..c8259da8 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,12 +1,12 @@ import copy from typing import Dict, List, Optional, Tuple -from asf_search import ASFSearchOptions, ASFSession, ASFProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct from asf_search.CMR.translate import try_parse_int from asf_search.constants import PLATFORM from asf_search.constants import PRODUCT_TYPE -class S1Product(ASFProduct): +class S1Product(ASFBaselineProduct): """ The S1Product classes covers most Sentinel-1 Products (For S1 BURST-SLC, OPERA-S1, and ARIA-S1 GUNW Products, see relevant S1 subclasses) @@ -16,8 +16,8 @@ class S1Product(ASFProduct): _base_properties = { 'frameNumber': {'path': ['AdditionalAttributes', ('Name', 'FRAME_NUMBER'), 'Values', 0], 'cast': try_parse_int}, #Sentinel and ALOS product alt for frameNumber (ESA_FRAME) - 'groupID': {'path': [ 'AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, - 'md5sum': {'path': [ 'AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, + 'groupID': {'path': ['AdditionalAttributes', ('Name', 'GROUP_ID'), 'Values', 0]}, + 'md5sum': {'path': ['AdditionalAttributes', ('Name', 'MD5SUM'), 'Values', 0]}, 'pgeVersion': {'path': ['PGEVersionClass', 'PGEVersion']}, } """ @@ -25,7 +25,7 @@ class S1Product(ASFProduct): - frameNumber: overrides ASFProduct's `CENTER_ESA_FRAME` with `FRAME_NUMBER` """ - baseline_type = ASFProduct.BaselineCalcType.CALCULATED + baseline_type = ASFBaselineProduct.BaselineCalcType def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @@ -38,8 +38,7 @@ def _has_baseline(self) -> bool: return ( baseline is not None and - None not in baseline['stateVectors']['positions'].values() and - len(baseline['stateVectors'].items()) <= 0 + None not in baseline['stateVectors']['positions'].values() ) def get_baseline_calc_properties(self) -> Dict: @@ -121,19 +120,18 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: @staticmethod def get_property_paths() -> Dict: return { - **ASFProduct.get_property_paths(), + **ASFBaselineProduct.get_property_paths(), **S1Product._base_properties } def is_valid_reference(self) -> bool: - """perpendicular baselines are not pre-calculated for S1 products and require position/velocity state vectors to calculate""" keys = ['postPosition', 'postPositionTime', 'prePosition', 'postPositionTime'] - return all([ - key not in self.baseline['stateVectors']['positions'] or - self.baseline['stateVectors']['positions'][key] is None - for key in keys - ]) + for key in keys: + if self.baseline['stateVectors']['positions'].get(key) is None: + return False + + return True @staticmethod def get_default_baseline_product_type() -> str: diff --git a/asf_search/Products/SEASATProduct.py b/asf_search/Products/SEASATProduct.py index 66a0de19..e726d756 100644 --- a/asf_search/Products/SEASATProduct.py +++ b/asf_search/Products/SEASATProduct.py @@ -2,6 +2,7 @@ from asf_search import ASFSession, ASFProduct from asf_search.CMR.translate import try_parse_float, try_round_float + class SEASATProduct(ASFProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/data-sets/sar-data-sets/seasat/ diff --git a/asf_search/__init__.py b/asf_search/__init__.py index dd7a1e2f..219aae82 100644 --- a/asf_search/__init__.py +++ b/asf_search/__init__.py @@ -21,6 +21,7 @@ from .ASFSession import ASFSession from .ASFProduct import ASFProduct +from .ASFBaselineProduct import ASFBaselineProduct from .ASFSearchResults import ASFSearchResults from .ASFSearchOptions import ASFSearchOptions, validators from .Products import * @@ -35,5 +36,5 @@ from .WKT import validate_wkt from .export import * -REPORT_ERRORS=True +REPORT_ERRORS=True """Enables automatic search error reporting to ASF, send any questions to uso@asf.alaska.edu""" diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 0c0d7f47..0e577129 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -2,31 +2,34 @@ import pytz from .calc import calculate_perpendicular_baselines -from asf_search import ASFProduct, ASFSearchResults +from asf_search import ASFProduct, ASFBaselineProduct, ASFSearchResults + def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): warnings = None if len(stack) == 0: raise ValueError('No products found matching stack parameters') - stack = [product for product in stack if not product.properties['processingLevel'].lower().startswith('metadata') and product.baseline != None] + stack = [product for product in stack if not product.properties['processingLevel'].lower().startswith('metadata') and product.baseline is not None] reference, stack, warnings = check_reference(reference, stack) - + stack = calculate_temporal_baselines(reference, stack) - if reference.baseline_type == ASFProduct.BaselineCalcType.PRE_CALCULATED: + if reference.baseline_type == ASFBaselineProduct.BaselineCalcType.PRE_CALCULATED: stack = offset_perpendicular_baselines(reference, stack) else: stack = calculate_perpendicular_baselines(reference.properties['sceneName'], stack) return ASFSearchResults(stack), warnings + def find_new_reference(stack: ASFSearchResults): for product in stack: if product.is_valid_reference(): return product return None + def check_reference(reference: ASFProduct, stack: ASFSearchResults): warnings = None if reference.properties['sceneName'] not in [product.properties['sceneName'] for product in stack]: # Somehow the reference we built the stack from is missing?! Just pick one @@ -42,6 +45,7 @@ def check_reference(reference: ASFProduct, stack: ASFSearchResults): return reference, stack, warnings + def calculate_temporal_baselines(reference: ASFProduct, stack: ASFSearchResults): """ Calculates temporal baselines for a stack of products based on a reference scene and injects those values into the stack. @@ -59,13 +63,13 @@ def calculate_temporal_baselines(reference: ASFProduct, stack: ASFSearchResults) if secondary_time.tzinfo is None: secondary_time = pytz.utc.localize(secondary_time) secondary.properties['temporalBaseline'] = (secondary_time.date() - reference_time.date()).days - + return stack def offset_perpendicular_baselines(reference: ASFProduct, stack: ASFSearchResults): reference_offset = float(reference.baseline['insarBaseline']) - + for product in stack: product.properties['perpendicularBaseline'] = round(float(product.baseline['insarBaseline']) - reference_offset) - + return stack diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index f7c98742..1a29630b 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -22,7 +22,9 @@ from asf_search.WKT.validate_wkt import validate_wkt from asf_search.search.error_reporting import report_search_error import asf_search.Products as ASFProductType -def search_generator( + + +def search_generator( absoluteOrbit: Union[int, Tuple[int, int], range, Sequence[Union[int, Tuple[int, int], range]]] = None, asfFrame: Union[int, Tuple[int, int], range, Sequence[Union[int, Tuple[int, int], range]]] = None, beamMode: Union[str, Sequence[str]] = None, @@ -82,13 +84,13 @@ def search_generator( url = '/'.join(s.strip('/') for s in [f'https://{opts.host}', f'{INTERNAL.CMR_GRANULE_PATH}']) total = 0 - + queries = build_subqueries(opts) for query in queries: translated_opts = translate_opts(query) cmr_search_after_header = "" subquery_count = 0 - + while(cmr_search_after_header is not None): try: items, subquery_max_results, cmr_search_after_header = query_cmr(opts.session, url, translated_opts, subquery_count) @@ -98,21 +100,21 @@ def search_generator( report_search_error(query, message) opts.session.headers.pop('CMR-Search-After', None) return - + opts.session.headers.update({'CMR-Search-After': cmr_search_after_header}) last_page = process_page(items, maxResults, subquery_max_results, total, subquery_count, opts) subquery_count += len(last_page) total += len(last_page) last_page.searchComplete = subquery_count == subquery_max_results or total == maxResults yield last_page - + if last_page.searchComplete: if total == maxResults: # the user has as many results as they wanted opts.session.headers.pop('CMR-Search-After', None) return else: # or we've gotten all possible results for this subquery cmr_search_after_header = None - + opts.session.headers.pop('CMR-Search-After', None) @@ -132,7 +134,7 @@ def query_cmr(session: ASFSession, url: str, translated_opts: Dict, sub_query_co raise CMRIncompleteError(f"CMR returned page of incomplete results. Expected {min(INTERNAL.CMR_PAGE_SIZE, hits - sub_query_count)} results, got {len(items)}") return items, hits, response.headers.get('CMR-Search-After', None) - + def process_page(items: List[ASFProduct], max_results: int, subquery_max_results: int, total: int, subquery_count: int, opts: ASFSearchOptions): if max_results is None: @@ -159,9 +161,9 @@ def get_page(session: ASFSession, url: str, translated_opts: List) -> Response: raise ASFSearch5xxError(error_message) from exc except ReadTimeout as exc: raise ASFSearchError(f'Connection Error (Timeout): CMR took too long to respond. Set asf constant "CMR_TIMEOUT" to increase. ({url=}, timeout={INTERNAL.CMR_TIMEOUT})') from exc - + return response - + def preprocess_opts(opts: ASFSearchOptions): # Repair WKT here so it only happens once, and you can save the result to the new Opts object: @@ -234,7 +236,7 @@ def set_platform_alias(opts: ASFSearchOptions): opts.platform = list(set(platform_list)) def as_ASFProduct(item: Dict, session: ASFSession) -> ASFProduct: - """ Returns the granule umm as the corresponding ASFProduct subclass, + """ Returns the granule umm as the corresponding ASFProduct subclass, or ASFProduct if no equivalent is found :param item: the granule umm json @@ -243,11 +245,11 @@ def as_ASFProduct(item: Dict, session: ASFSession) -> ASFProduct: :returns the granule as an object of type ASFProduct """ product_type_key = _get_product_type_key(item) - + # if there's a direct entry in our dataset to product type dict if (subclass := dataset_to_product_types.get(product_type_key)) is not None: return subclass(item, session=session) - + # or if the key matches one of the shortnames in any of our datasets for dataset, collections in dataset_collections.items(): if collections.get(product_type_key) is not None: @@ -262,16 +264,16 @@ def _get_product_type_key(item: Dict) -> str: - special case: Aria S1 GUNW """ collection_shortName = ASFProduct.umm_get(item['umm'], 'CollectionReference', 'ShortName') - + if collection_shortName is None: platform_shortname = ASFProduct.umm_get(item['umm'], 'Platforms', 0, 'ShortName') if platform_shortname in ['SENTINEL-1A', 'SENTINEL-1B']: asf_platform = ASFProduct.umm_get(item['umm'], 'AdditionalAttributes', ('Name', 'ASF_PLATFORM'), 'Values', 0) if 'Sentinel-1 Interferogram' in asf_platform: return 'ARIA S1 GUNW' - + return platform_shortname - + return collection_shortName # Maps datasets from DATASET.py and collection/platform shortnames to ASFProduct subclasses @@ -279,28 +281,28 @@ def _get_product_type_key(item: Dict) -> str: 'SENTINEL-1': ASFProductType.S1Product, 'OPERA-S1': ASFProductType.OPERAS1Product, 'SLC-BURST': ASFProductType.S1BURSTProduct, - + 'ALOS': ASFProductType.ALOSProduct, - + 'SIR-C': ASFProductType.SIRCProduct, 'STS-59': ASFProductType.SIRCProduct, 'STS-68': ASFProductType.SIRCProduct, - + 'ARIA S1 GUNW': ASFProductType.ARIAS1GUNWProduct, - + 'SMAP': ASFProductType.SMAPProduct, - + 'UAVSAR': ASFProductType.UAVSARProduct, 'G-III': ASFProductType.UAVSARProduct, - + 'RADARSAT-1': ASFProductType.RadarsatProduct, - + 'ERS': ASFProductType.ERSProduct, 'ERS-1': ASFProductType.ERSProduct, 'ERS-2': ASFProductType.ERSProduct, - + 'JERS-1': ASFProductType.JERSProduct, - + 'AIRSAR': ASFProductType.AIRSARProduct, 'DC-8': ASFProductType.AIRSARProduct, diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index 32a8d68b..3ef44b2d 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -79,7 +79,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "`ASFProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via `ASFProduct.baseline_type`\n", + "`ASFProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via `ASFBaselineProduct.baseline_type`\n", "\n", "The three `BaselineCalcType` types:\n", "- `NONE` Cannot be used in baseline calculations\n", diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index ab64ecf1..9c383daf 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -1,7 +1,7 @@ from typing import List from numbers import Number from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack -from asf_search import ASFProduct, ASFSearchResults, ASFSession +from asf_search import ASFProduct, ASFSearchResults, ASFSession, ASFBaselineProduct from asf_search.search.search_generator import as_ASFProduct import pytest @@ -9,7 +9,7 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: """ Test asf_search.baseline.stack.find_new_reference """ - + if stack == []: assert(find_new_reference(stack) == None) else: @@ -17,25 +17,25 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: for idx, product in enumerate(products): product = clear_baseline(stack[idx], product) assert find_new_reference(products).properties['sceneName'] == stack[output_index]['properties']['sceneName'] - -def run_test_get_default_product_type(product: ASFProduct, product_type: str) -> None: + +def run_test_get_default_product_type(product: ASFBaselineProduct, product_type: str) -> None: assert product.get_default_baseline_product_type() == product_type - + def run_test_get_baseline_from_stack(reference, stack, output_stack, error): reference = as_ASFProduct(reference, ASFSession()) stack = ASFSearchResults([as_ASFProduct(product, ASFSession()) for product in stack]) - + if error == None: stack, warnings = get_baseline_from_stack(reference, stack) - + keys = ['sceneName', 'perpendicularBaseline', 'temporalBaseline'] for idx, product in enumerate(stack): for key in keys: assert product.properties[key] == output_stack[idx]['properties'][key] - + return - + with pytest.raises(ValueError): for product in stack: if product.baseline.get('insarBaseline', False): @@ -53,12 +53,12 @@ def run_test_valid_state_vectors(reference, output): clear_baseline(reference, product) assert output == product.is_valid_reference() return - + def clear_baseline(resource, product: ASFProduct): -# Baseline values can be restored from UMM in asfProduct constructor, +# Baseline values can be restored from UMM in asfProduct constructor, # this erases them again if the resource omitted them from the product if (stateVectors:=resource['baseline'].get('stateVectors')): if stateVectors.get('positions') == {}: product.baseline = {'stateVectors': {'positions': {}, 'velocities': {}}} - + return product diff --git a/tests/pytest-managers.py b/tests/pytest-managers.py index edec4390..016b000a 100644 --- a/tests/pytest-managers.py +++ b/tests/pytest-managers.py @@ -1,5 +1,5 @@ from typing import Dict, List -from asf_search import ASFSearchOptions, ASFSession, FileDownloadType +from asf_search import ASFSearchOptions, ASFSession, FileDownloadType, ASFBaselineProduct from asf_search.exceptions import ASFAuthenticationError from ASFProduct.test_ASFProduct import run_test_ASFProduct, run_test_ASFProduct_download, run_test_product_get_stack_options, run_test_stack @@ -42,7 +42,7 @@ def test_ASFProduct(**args) -> None: def test_ASFProduct_Stack(**args) -> None: """ Tests ASFProduct.stack() with reference and corresponding stack - Checks for temporalBaseline order, + Checks for temporalBaseline order, asserting the stack is ordered by the scene's temporalBaseline (in ascending order) """ test_info = args["test_info"] @@ -71,9 +71,9 @@ def test_ASFProduct_download(**args) -> None: filetype = FileDownloadType.ADDITIONAL_FILES else: filetype = FileDownloadType.ALL_FILES - + run_test_ASFProduct_download(reference, filename, filetype, additional_urls) - + # asf_search.ASFSession Tests def test_ASFSession_Error(**args) -> None: """ @@ -111,7 +111,7 @@ def test_ASFSession_Cookie_Error(**args) -> None: def test_asf_session_rebuild_auth(**args) -> None: """ Test asf_search.ASFSession.rebuild_auth - When redirecting from an ASF domain, only accept + When redirecting from an ASF domain, only accept domains listed in ASFSession.AUTH_DOMAINS """ test_info = args["test_info"] @@ -147,24 +147,24 @@ def test_get_unprocessed_stack_params(**args) -> None: def test_get_stack_opts_invalid_insarStackId(**args) -> None: """ - Test asf_search.search.baseline_search.get_stack_opts with a the reference scene's + Test asf_search.search.baseline_search.get_stack_opts with a the reference scene's insarStackID set to an invalid value, and asserting an ASFBaselineError is raised """ test_info = args["test_info"] reference = get_resource(test_info["product"]) - + run_get_stack_opts_invalid_insarStackId(reference) def test_temporal_baseline(**args) -> None: """ Test asf_search.search.baseline_search.calc_temporal_baselines, asserting mutated baseline stack - is still the same length and that each product's properties contain a temporalBaseline key + is still the same length and that each product's properties contain a temporalBaseline key """ test_info = args["test_info"] reference = get_resource(test_info["product"]) stack = get_resource(test_info["stack"]) run_test_calc_temporal_baselines(reference, stack) - + def test_stack_from_product(**args) -> None: """ Test asf_search.search.baseline_search.stack_from_product, asserting stack returned is ordered @@ -173,7 +173,7 @@ def test_stack_from_product(**args) -> None: test_info = args["test_info"] reference = get_resource(test_info["product"]) stack = get_resource(test_info["stack"]) - + run_test_stack_from_product(reference, stack) def test_stack_from_id(**args) -> None: @@ -197,7 +197,7 @@ def test_stack_from_id(**args) -> None: # asf_search.ASFSearchResults Tests def test_ASFSearchResults(**args) -> None: """ - Test asf_search.ASFSearchResults, asserting initialized values, + Test asf_search.ASFSearchResults, asserting initialized values, and geojson response returns object with type FeatureCollection """ test_info = args["test_info"] @@ -315,7 +315,7 @@ def test_search_wkt_prep(**args) -> None: """ test_info = args["test_info"] wkt = get_resource(test_info['wkt']) - + run_test_search_wkt_prep(wkt) def test_simplify_aoi(**args) -> None: @@ -332,7 +332,7 @@ def test_get_platform_campaign_names(**args) -> None: test_info = args["test_info"] cmr_ummjson = get_resource(test_info["cmr_ummjson"]) campaigns: List[str] = get_resource(test_info["campaigns"]) - + run_test_get_project_names(cmr_ummjson, campaigns) def test_download_url(**args) -> None: @@ -348,7 +348,7 @@ def test_download_url(**args) -> None: run_test_download_url_auth_error(url, path, filename) else: run_test_download_url(url, path, filename) - + def test_find_new_reference(**args) -> None: """ Test asf_search.baseline.calc.find_new_reference @@ -356,18 +356,19 @@ def test_find_new_reference(**args) -> None: test_info = args["test_info"] stack = get_resource(test_info["stack"]) output_index = get_resource(test_info["output_index"]) - + run_test_find_new_reference(stack, output_index) def test_get_default_product_type(**args) -> None: test_info = args["test_info"] product = get_resource(test_info["product"]) product_type = get_resource(test_info["product_type"]) - + product = as_ASFProduct({'meta': product['meta'], 'umm': product['umm']}, ASFSession()) + if product.properties.get('sceneName') is None: product.properties['sceneName'] = 'BAD_SCENE' - + run_test_get_default_product_type(product, product_type) def test_get_baseline_from_stack(**args) -> None: @@ -382,9 +383,9 @@ def test_valid_state_vectors(**args) -> None: test_info = args["test_info"] reference = get_resource(test_info['reference']) output = get_resource(test_info['output']) - + run_test_valid_state_vectors(reference, output) - + def test_validator_map_validate(**args) -> None: test_info = args["test_info"] key = get_resource(test_info['key']) @@ -400,7 +401,7 @@ def test_ASFSearchOptions_validator(**args) -> None: output = safe_load_tuple(get_resource(test_info['output'])) error = get_resource(test_info['error']) run_test_ASFSearchOptions_validator(validator_name, param, output, error) - + def test_ASFSearchOptions(**kwargs) -> None: run_test_ASFSearchOptions(**kwargs) @@ -412,7 +413,7 @@ def test_ASFSearchResults_intersection(**kwargs) -> None: def test_search_dataset(**kwargs) -> None: dataset = get_resource(kwargs['test_info']['dataset']) run_test_dataset_search(dataset) - + def test_serialization(**args) -> None: test_info = args['test_info'] product = get_resource(test_info.get('product')) @@ -443,17 +444,17 @@ def safe_load_tuple(param): loads a tuple from a list if a param is an object with key 'tuple' (Arbritrary constructor initialization is not supported by yaml.safe_load as a security measure) - + """ if isinstance(param, Dict): if "tuple" in param.keys(): param = tuple(param['tuple']) - + return param def test_output_format(**args) -> None: test_info = args['test_info'] - + products = get_resource(test_info['results']) if not isinstance(products, List): products = [products] @@ -463,7 +464,7 @@ def test_output_format(**args) -> None: # Finds and loads file from yml_tests/Resouces/ if loaded field ends with .yml/yaml extension def get_resource(yml_file): - + if isinstance(yml_file, str): if yml_file.endswith((".yml", ".yaml")): base_path = pathlib.Path(__file__).parent.resolve() diff --git a/tests/yml_tests/test_stack.yml b/tests/yml_tests/test_stack.yml index 87368a45..ae510f32 100644 --- a/tests/yml_tests/test_stack.yml +++ b/tests/yml_tests/test_stack.yml @@ -11,10 +11,6 @@ tests: stack: Fairbanks_S1_stack_preprocessed_incomplete.yml output_index: 1 -- test-get_default_product_type empty: - product: {'meta': {}, 'umm': {}} - product_type: null - - test-get_default_product_type S1: product: Fairbanks_SLC.yml product_type: SLC @@ -64,4 +60,3 @@ tests: - test-valid-state-vectors fairbanks slc: reference: Fairbanks_SLC_no_stateVectors.yml output: False - From 19ec81faa89add74255879514aff7f04786ba774 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 18 Jan 2024 14:15:54 -0900 Subject: [PATCH 85/95] renames ASFBaselineProduct to ASFStackableProduct --- ...elineProduct.py => ASFStackableProduct.py} | 10 +-- asf_search/Products/ALOSProduct.py | 6 +- asf_search/Products/ERSProduct.py | 6 +- asf_search/Products/JERSProduct.py | 6 +- asf_search/Products/RadarsatProduct.py | 6 +- asf_search/Products/S1Product.py | 8 +- asf_search/__init__.py | 2 +- asf_search/baseline/stack.py | 4 +- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 80 ++++++++++--------- tests/BaselineSearch/Stack/test_stack.py | 4 +- tests/pytest-managers.py | 2 +- 11 files changed, 70 insertions(+), 64 deletions(-) rename asf_search/{ASFBaselineProduct.py => ASFStackableProduct.py} (93%) diff --git a/asf_search/ASFBaselineProduct.py b/asf_search/ASFStackableProduct.py similarity index 93% rename from asf_search/ASFBaselineProduct.py rename to asf_search/ASFStackableProduct.py index 85691e9b..60c3830e 100644 --- a/asf_search/ASFBaselineProduct.py +++ b/asf_search/ASFStackableProduct.py @@ -6,7 +6,7 @@ from asf_search.exceptions import ASFBaselineError -class ASFBaselineProduct(ASFProduct): +class ASFStackableProduct(ASFProduct): """ Used for ERS-1 and ERS-2 products @@ -20,15 +20,15 @@ class BaselineCalcType(Enum): """ Defines how asf-search will calculate perpendicular baseline for products of this subclass """ - - """Cannot be used in baseline calculations""" PRE_CALCULATED = 0 """Has pre-calculated insarBaseline value that will be used for perpendicular calculations""" CALCULATED = 1 """Uses position/velocity state vectors and ascending node time for perpendicular calculations""" + baseline_type = BaselineCalcType.PRE_CALCULATED - + """Determines how asf-search will attempt to stack products of this type.""" + def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) self.baseline = self.get_baseline_calc_properties() @@ -57,7 +57,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): def get_property_paths() -> Dict: return { **ASFProduct.get_property_paths(), - **ASFBaselineProduct._base_properties + **ASFStackableProduct._base_properties } def is_valid_reference(self): diff --git a/asf_search/Products/ALOSProduct.py b/asf_search/Products/ALOSProduct.py index d9dc3510..9f31011b 100644 --- a/asf_search/Products/ALOSProduct.py +++ b/asf_search/Products/ALOSProduct.py @@ -1,10 +1,10 @@ from typing import Dict, Union -from asf_search import ASFSession, ASFProduct, ASFBaselineProduct, ASFSearchOptions +from asf_search import ASFSession, ASFProduct, ASFStackableProduct, ASFSearchOptions from asf_search.CMR.translate import try_parse_float, try_parse_int, try_round_float from asf_search.constants import PRODUCT_TYPE -class ALOSProduct(ASFBaselineProduct): +class ALOSProduct(ASFStackableProduct): """ Used for ALOS Palsar and Avnir dataset products @@ -34,6 +34,6 @@ def get_default_baseline_product_type() -> Union[str, None]: @staticmethod def get_property_paths() -> Dict: return { - **ASFBaselineProduct.get_property_paths(), + **ASFStackableProduct.get_property_paths(), **ALOSProduct._base_properties } diff --git a/asf_search/Products/ERSProduct.py b/asf_search/Products/ERSProduct.py index 19669fe8..a2dbff98 100644 --- a/asf_search/Products/ERSProduct.py +++ b/asf_search/Products/ERSProduct.py @@ -1,10 +1,10 @@ from typing import Dict, Union -from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFStackableProduct from asf_search.CMR.translate import try_round_float from asf_search.constants import PRODUCT_TYPE -class ERSProduct(ASFBaselineProduct): +class ERSProduct(ASFStackableProduct): """ Used for ERS-1 and ERS-2 products @@ -26,7 +26,7 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): @staticmethod def get_property_paths() -> Dict: return { - **ASFBaselineProduct.get_property_paths(), + **ASFStackableProduct.get_property_paths(), **ERSProduct._base_properties } diff --git a/asf_search/Products/JERSProduct.py b/asf_search/Products/JERSProduct.py index 99574516..1963225f 100644 --- a/asf_search/Products/JERSProduct.py +++ b/asf_search/Products/JERSProduct.py @@ -1,9 +1,9 @@ from typing import Dict, Union -from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFStackableProduct from asf_search.constants import PRODUCT_TYPE -class JERSProduct(ASFBaselineProduct): +class JERSProduct(ASFStackableProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/jers-1/ """ @@ -28,6 +28,6 @@ def get_default_baseline_product_type() -> Union[str, None]: @staticmethod def get_property_paths() -> Dict: return { - **ASFBaselineProduct.get_property_paths(), + **ASFStackableProduct.get_property_paths(), **JERSProduct._base_properties } diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RadarsatProduct.py index 9c35ed07..19aa1228 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RadarsatProduct.py @@ -1,10 +1,10 @@ from typing import Dict, Union -from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFStackableProduct from asf_search.CMR.translate import try_parse_float from asf_search.constants import PRODUCT_TYPE -class RadarsatProduct(ASFBaselineProduct): +class RadarsatProduct(ASFStackableProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/radarsat-1/ """ @@ -21,7 +21,7 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): @staticmethod def get_property_paths() -> Dict: return { - **ASFBaselineProduct.get_property_paths(), + **ASFStackableProduct.get_property_paths(), **RadarsatProduct._base_properties } diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index c8259da8..cd1bc4ca 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,12 +1,12 @@ import copy from typing import Dict, List, Optional, Tuple -from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFBaselineProduct +from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFStackableProduct from asf_search.CMR.translate import try_parse_int from asf_search.constants import PLATFORM from asf_search.constants import PRODUCT_TYPE -class S1Product(ASFBaselineProduct): +class S1Product(ASFStackableProduct): """ The S1Product classes covers most Sentinel-1 Products (For S1 BURST-SLC, OPERA-S1, and ARIA-S1 GUNW Products, see relevant S1 subclasses) @@ -25,7 +25,7 @@ class S1Product(ASFBaselineProduct): - frameNumber: overrides ASFProduct's `CENTER_ESA_FRAME` with `FRAME_NUMBER` """ - baseline_type = ASFBaselineProduct.BaselineCalcType + baseline_type = ASFStackableProduct.BaselineCalcType def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @@ -120,7 +120,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: @staticmethod def get_property_paths() -> Dict: return { - **ASFBaselineProduct.get_property_paths(), + **ASFStackableProduct.get_property_paths(), **S1Product._base_properties } diff --git a/asf_search/__init__.py b/asf_search/__init__.py index 219aae82..72cbc5c4 100644 --- a/asf_search/__init__.py +++ b/asf_search/__init__.py @@ -21,7 +21,7 @@ from .ASFSession import ASFSession from .ASFProduct import ASFProduct -from .ASFBaselineProduct import ASFBaselineProduct +from .ASFStackableProduct import ASFStackableProduct from .ASFSearchResults import ASFSearchResults from .ASFSearchOptions import ASFSearchOptions, validators from .Products import * diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 0e577129..db3b0418 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -2,7 +2,7 @@ import pytz from .calc import calculate_perpendicular_baselines -from asf_search import ASFProduct, ASFBaselineProduct, ASFSearchResults +from asf_search import ASFProduct, ASFStackableProduct, ASFSearchResults def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): @@ -15,7 +15,7 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults): stack = calculate_temporal_baselines(reference, stack) - if reference.baseline_type == ASFBaselineProduct.BaselineCalcType.PRE_CALCULATED: + if reference.baseline_type == ASFStackableProduct.BaselineCalcType.PRE_CALCULATED: stack = offset_perpendicular_baselines(reference, stack) else: stack = calculate_perpendicular_baselines(reference.properties['sceneName'], stack) diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index 3ef44b2d..5996bcfa 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -16,7 +16,7 @@ "outputs": [], "source": [ "import asf_search as asf\n", - "products = ['S1A_IW_SLC__1SDV_20231226T162948_20231226T163016_051828_0642C6_272F-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES']\n", + "products = ['S1A_IW_SLC__1SDV_20231226T162948_20231226T163016_051828_0642C6_272F-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES', 'UA_newyor_03204_22005-013_22010-002_0014d_s01_L090_01-INTERFEROMETRY']\n", "results = asf.product_search(product_list=products)\n", "results" ] @@ -25,8 +25,8 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Notice the different type in the `results` list: `S1Product`, `S1BURSTProduct`, `ARIAS1GUNWProduct`, and `ALOSProduct`.\n", - "Each of these are subclasses of type `ASFProduct`.\n", + "Notice the different type in the `results` list: `S1Product`, `S1BURSTProduct`, `ARIAS1GUNWProduct`, `ALOSProduct`, and `UAVSARProduct`.\n", + "Each of these classes are subclassed from `ASFProduct` in some way.\n", "\n", "Let's compare the `properties` of `S1Product` and `ALOSProduct`" ] @@ -37,7 +37,7 @@ "metadata": {}, "outputs": [], "source": [ - "s1, s1Burst, ariaGunw, alos = results\n", + "s1, uavsar, s1Burst, ariaGunw, alos, = results\n", "\n", "def compare_properties(lhs: asf.ASFProduct, rhs: asf.ASFProduct):\n", " # Compares properties of two ASFProduct objects in a color coded table\n", @@ -55,14 +55,16 @@ " for key in keys:\n", " print(f\"{key}:\\n\\t{GREEN}{lhs.properties.get(key, f'{RED}None')}{RESET}\\t{BLUE}{rhs.properties.get(key, f'{RED}None')}{RESET}\\n\")\n", "\n", - "compare_properties(s1, alos)" + "compare_properties(s1, uavsar)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Notice a few properties (marked in red) are missing from each product properties dict. For example, `S1Product` has `pgeVersion`, while `ALOSProduct` has `offNadirAngle`, `faradayRotation`, and `insarStackId`. Moreover, their `baseline` field differs." + "Notice a few properties (marked in red) are missing from each product properties dict. For example, `S1Product` has `pgeVersion`, while `UAVSARProduct` has `insarStackId`. \n", + "\n", + "Moreover, `S1Product` has one major difference with `UAVSARProduct`: `S1Product` inherits from `ASFStackableProduct` (see section below)." ] }, { @@ -72,21 +74,44 @@ "outputs": [], "source": [ "print(f\"{s1.properties['fileID']}\\n\\t{s1.baseline}\\n\")\n", - "print(f\"{alos.properties['fileID']}\\n\\t{alos.baseline}\")" + "print(f\"{uavsar.properties['fileID']}\\n\\t{uavsar.baseline}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "`ASFProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via `ASFBaselineProduct.baseline_type`\n", + "# `ASFStackableProduct`\n", + "\n", + "`ASFStackableProduct` is an important `ASFProduct` subclass, from which all stackable products meant for time-series analysis are derived from. `ASFStackableProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via the `baseline_type` property.\n", + "\n", + "Inherits: `ASFProduct`\n", + "\n", + "Inherited By:\n", + "- `ALOSProduct`\n", + "- `ERSProduct`\n", + "- `JERSProduct`\n", + "- `RadarsatProduct`\n", + "- `S1Product`\n", + " - `S1BurstProduct`\n", + " - `OPERAS1Product` (Stacking currently disabled)\n", + " - `ARIAS1GUNWProduct` (Stacking currently disabled)\n", + "\n", + "Key Methods:\n", + "- `get_baseline_calc_properties()`\n", + "- `get_stack_opts()` (Overrides `ASFproduct`)\n", + "- `is_valid_reference()`\n", + "- `get_default_baseline_product_type()`\n", "\n", - "The three `BaselineCalcType` types:\n", - "- `NONE` Cannot be used in baseline calculations\n", - "- `PRE_CALCULATED` Has pre-calculated insarBaseline value that will be used for perpendicular calculations\n", + "Key Definitions:\n", + "class enum `BaselineCalcType`:\n", + "- `PRE_CALCULATED` Has pre-calculated `insarBaseline` value that will be used for perpendicular calculations\n", "- `CALCULATED` Uses position/velocity state vectors and ascending node time for perpendicular calculations\n", "\n", - "Any subclass object that changes `baseline_type` from the default of `BaselineCalcType.NONE` is elligble for building a baseline stacking with `ASFProduct.stack()` (see the 4-Baseline_Search.ipynb example notebook for more examples of baseline stacking)." + "Key Fields:\n", + "- `baseline`\n", + "- `baseline_type` (`BaselineCalcType.PRE_CALCULATED` by default or `BaselineCalcType.CALCULATED`)\n", + "\n" ] }, { @@ -96,7 +121,7 @@ "outputs": [], "source": [ "print(f\"Baseline Calculation Types\")\n", - "print(f\"ASFProduct:\\t {asf.ASFProduct.baseline_type}\")\n", + "print(f\"ASFProduct:\\t {asf.ASFStackableProduct.baseline_type}\")\n", "print(f\"ALOSProduct:\\t {alos.baseline_type}\")\n", "print(f\"S1Product:\\t {s1.baseline_type}\")" ] @@ -105,7 +130,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "`ASFProduct` subclasses even have their own stack search option methods. The `ASFProduct` implementation of `get_stack_opts()` returns `None`, but subclasses like `S1Product` and `ALOSProduct` have different approaches." + "`ASFStackableProduct` subclasses even have their own stack search option methods. The `ASFStackableProduct` implementation of `get_stack_opts()` returns the commonly used params for pre-calculated datasets (processing level and insar stack ID), but subclasses like `S1Product` and `S1BurstProduct` use their own approach. " ] }, { @@ -115,6 +140,7 @@ "outputs": [], "source": [ "print(f\"S1Product:\\n{s1.get_stack_opts()}\\n\")\n", + "print(f\"S1BURSTProduct:\\n{s1Burst.get_stack_opts()}\\n\")\n", "print(f\"ALOSProduct:\\n{alos.get_stack_opts()}\")" ] }, @@ -122,29 +148,10 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Sublcasses of type `ASFProduct` can just as easily be parent classes to other subclasses, like `S1Product`, which is the parent class to `S1BurstProduct` and `ARIAS1GUNWProduct`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(\"S1BurstProduct:\")\n", - "print(f\"\\tburst dict:\\n\\t{s1Burst.properties['burst']}\")\n", - "print(f\"\\nS1BurstProduct.get_stack_opts(): {s1Burst.get_stack_opts()}\\n\\n\")\n", + "# Writing Custom `ASFProduct` Subclasses\n", + "Because `ASFProduct` is built for subclassing, that means users can provide their own custom subclasses dervied directly from `ASFProduct` or even from a pre-existing subclass like `S1Product` or `OperaS1Product`.\n", "\n", - "print(f\"ARIAS1GUNWProduct:\")\n", - "print(f\"\\tperpendicularBaseline: {ariaGunw.properties['perpendicularBaseline']}\")\n", - "print(f\"\\tOrbit: {ariaGunw.properties['orbit']}\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Because `ASFProduct` is built for subclassing, that means users can provide their own custom subclasses." + "In this example we subclass `S1Product`, and overrides the default `ASFProduct.stack()` with one that returns a _list_ of `S1BurstProduct` stacks based on an area of interest, modify `geojson()` to return state vectors, and add a new helper method for getting raw umm CMR response!" ] }, { @@ -153,7 +160,6 @@ "metadata": {}, "outputs": [], "source": [ - "import copy\n", "from typing import Union\n", "from asf_search import ASFSearchOptions, ASFSession\n", "from asf_search.ASFSearchOptions import ASFSearchOptions\n", diff --git a/tests/BaselineSearch/Stack/test_stack.py b/tests/BaselineSearch/Stack/test_stack.py index 9c383daf..b707d8e0 100644 --- a/tests/BaselineSearch/Stack/test_stack.py +++ b/tests/BaselineSearch/Stack/test_stack.py @@ -1,7 +1,7 @@ from typing import List from numbers import Number from asf_search.baseline.stack import find_new_reference, get_baseline_from_stack -from asf_search import ASFProduct, ASFSearchResults, ASFSession, ASFBaselineProduct +from asf_search import ASFProduct, ASFSearchResults, ASFSession, ASFStackableProduct from asf_search.search.search_generator import as_ASFProduct import pytest @@ -18,7 +18,7 @@ def run_test_find_new_reference(stack: List, output_index: Number) -> None: product = clear_baseline(stack[idx], product) assert find_new_reference(products).properties['sceneName'] == stack[output_index]['properties']['sceneName'] -def run_test_get_default_product_type(product: ASFBaselineProduct, product_type: str) -> None: +def run_test_get_default_product_type(product: ASFStackableProduct, product_type: str) -> None: assert product.get_default_baseline_product_type() == product_type def run_test_get_baseline_from_stack(reference, stack, output_stack, error): diff --git a/tests/pytest-managers.py b/tests/pytest-managers.py index 016b000a..5117c72e 100644 --- a/tests/pytest-managers.py +++ b/tests/pytest-managers.py @@ -1,5 +1,5 @@ from typing import Dict, List -from asf_search import ASFSearchOptions, ASFSession, FileDownloadType, ASFBaselineProduct +from asf_search import ASFSearchOptions, ASFSession, FileDownloadType, ASFStackableProduct from asf_search.exceptions import ASFAuthenticationError from ASFProduct.test_ASFProduct import run_test_ASFProduct, run_test_ASFProduct_download, run_test_product_get_stack_options, run_test_stack From afc981ecfaa87ab58bef13e12e79e8a11c430930 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 18 Jan 2024 15:46:12 -0900 Subject: [PATCH 86/95] makes ARIAS1GUNWProduct and OPERAS1Product not stackable (for now), update example notebook --- asf_search/Products/ARIAS1GUNWProduct.py | 16 +++ asf_search/Products/OPERAS1Product.py | 18 ++- asf_search/Products/S1Product.py | 7 +- ...vanced-Custom-ASFProduct-Subclassing.ipynb | 126 +++++++++++------- 4 files changed, 116 insertions(+), 51 deletions(-) diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 60ad7b7f..65b4811f 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -1,5 +1,6 @@ from typing import Dict from asf_search import ASFSession +from asf_search.ASFSearchOptions import ASFSearchOptions from asf_search.Products import S1Product from asf_search.CMR.translate import try_parse_float @@ -31,3 +32,18 @@ def get_property_paths() -> Dict: **S1Product.get_property_paths(), **ARIAS1GUNWProduct._base_properties } + + def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: + """ + Build search options that can be used to find an insar stack for this product + + :return: ASFSearchOptions describing appropriate options for building a stack from this product + """ + return None + + @staticmethod + def get_default_baseline_product_type() -> None: + """ + Returns the product type to search for when building a baseline stack. + """ + return None \ No newline at end of file diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index c08e0340..6a1bbff5 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -1,4 +1,4 @@ -from typing import Dict +from typing import Dict, Optional from asf_search import ASFSearchOptions, ASFSession from asf_search.Products import S1Product @@ -64,10 +64,26 @@ def get_property_paths() -> Dict: **S1Product.get_property_paths(), **OPERAS1Product._base_properties } + + @staticmethod + def get_default_baseline_product_type() -> None: + """ + Returns the product type to search for when building a baseline stack. + """ + return None + def is_valid_reference(self): return False + def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: + """ + Build search options that can be used to find an insar stack for this product + + :return: ASFSearchOptions describing appropriate options for building a stack from this product + """ + return None + def get_sort_keys(self): keys = super().get_sort_keys() diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index cd1bc4ca..6ab109a7 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -1,6 +1,6 @@ import copy from typing import Dict, List, Optional, Tuple -from asf_search import ASFSearchOptions, ASFSession, ASFProduct, ASFStackableProduct +from asf_search import ASFSearchOptions, ASFSession, ASFStackableProduct from asf_search.CMR.translate import try_parse_int from asf_search.constants import PLATFORM from asf_search.constants import PRODUCT_TYPE @@ -25,7 +25,7 @@ class S1Product(ASFStackableProduct): - frameNumber: overrides ASFProduct's `CENTER_ESA_FRAME` with `FRAME_NUMBER` """ - baseline_type = ASFStackableProduct.BaselineCalcType + baseline_type = ASFStackableProduct.BaselineCalcType.CALCULATED def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): super().__init__(args, session) @@ -133,6 +133,9 @@ def is_valid_reference(self) -> bool: return True + def is_valid_reference(self): + return False + @staticmethod def get_default_baseline_product_type() -> str: """ diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index 03b9f026..f2610ff1 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -4,9 +4,27 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Subclassing `ASFProduct`\n", + "# `ASFProduct` Subclasses\n", "\n", - "`ASFProduct` is the base class for all search result objects as of asf-search v7.0.0. There are several subclasses of `ASFProduct` that asf-search uses for specific platforms and product types with unique properties/functionality." + "`ASFProduct` is the base class for all search result objects as of asf-search v7.0.0. There are several subclasses of `ASFProduct` that asf-search uses for specific platforms and product types with unique properties/functionality.\n", + "\n", + "Key Methods:\n", + "- `geojson()`\n", + "- `download()`\n", + "- `stack()`\n", + "- `get_stack_opts()` (returns None in `ASFProduct`, implemented by `ASFStackableProduct` subclass and its subclasses)\n", + "- `centroid()`\n", + "- `remotezip()` (requires asf-search's optional dependency be installed)\n", + "- `get_property_paths()` (gets product's keywords and their paths in umm dictionary)\n", + "- `translate_product()` (reads properties from umm, populates `properties` with associated keyword)\n", + "- `get_sort_keys()`\n", + "- `umm_get()`\n", + "\n", + "Key Properties:\n", + "- `properties`\n", + "- `_base_properties` (What `get_property_paths()` uses to find values in umm json `properties`)\n", + "- `umm` (The product's umm JSON from CMR)\n", + "- `metadata` (The product's metadata JSON from CMR)" ] }, { @@ -16,7 +34,7 @@ "outputs": [], "source": [ "import asf_search as asf\n", - "products = ['S1A_IW_SLC__1SDV_20231224T032123_20231224T032150_051791_064179_16F5-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES']\n", + "products = ['S1A_IW_SLC__1SDV_20231226T162948_20231226T163016_051828_0642C6_272F-SLC', 'S1_185682_IW2_20210224T161634_VV_035E-BURST','S1-GUNW-D-R-087-tops-20190301_20190223-161540-20645N_18637N-PP-7a85-v2_0_1-unwrappedPhase','ALPSRP111041130-RTC_HI_RES', 'UA_newyor_03204_22005-013_22010-002_0014d_s01_L090_01-INTERFEROMETRY']\n", "results = asf.product_search(product_list=products)\n", "results" ] @@ -25,8 +43,8 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Notice the different type in the `results` list: `S1Product`, `S1BURSTProduct`, `ARIAS1GUNWProduct`, and `ALOSProduct`.\n", - "Each of these are subclasses of type `ASFProduct`.\n", + "Notice the different type in the `results` list: `S1Product`, `S1BURSTProduct`, `ARIAS1GUNWProduct`, `ALOSProduct`, and `UAVSARProduct`.\n", + "Each of these classes are subclassed from `ASFProduct` in some way.\n", "\n", "Let's compare the `properties` of `S1Product` and `ALOSProduct`" ] @@ -37,7 +55,7 @@ "metadata": {}, "outputs": [], "source": [ - "s1, s1Burst, ariaGunw, alos = results\n", + "s1, uavsar, s1Burst, ariaGunw, alos = results\n", "\n", "def compare_properties(lhs: asf.ASFProduct, rhs: asf.ASFProduct):\n", " # Compares properties of two ASFProduct objects in a color coded table\n", @@ -55,14 +73,16 @@ " for key in keys:\n", " print(f\"{key}:\\n\\t{GREEN}{lhs.properties.get(key, f'{RED}None')}{RESET}\\t{BLUE}{rhs.properties.get(key, f'{RED}None')}{RESET}\\n\")\n", "\n", - "compare_properties(s1, alos)" + "compare_properties(s1, uavsar)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Notice a few properties (marked in red) are missing from each product properties dict. For example, `S1Product` has `pgeVersion`, while `ALOSProduct` has `offNadirAngle`, `faradayRotation`, and `insarStackId`. Moreover, their `baseline` field differs." + "Notice a few properties (marked in red) are missing from each product properties dict. For example, `S1Product` has `pgeVersion`, while `UAVSARProduct` has `insarStackId`. \n", + "\n", + "Moreover, `S1Product` has one major difference with `UAVSARProduct`: `S1Product` inherits from `ASFStackableProduct` (see section below)." ] }, { @@ -72,21 +92,44 @@ "outputs": [], "source": [ "print(f\"{s1.properties['fileID']}\\n\\t{s1.baseline}\\n\")\n", - "print(f\"{alos.properties['fileID']}\\n\\t{alos.baseline}\")" + "print(f\"{uavsar.properties['fileID']}\\n\\t{uavsar.baseline}\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "`ASFProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via `ASFProduct.baseline_type`\n", + "# `ASFStackableProduct`\n", + "\n", + "`ASFStackableProduct` is an important `ASFProduct` subclass, from which stackable products types meant for time-series analysis are derived from. `ASFStackableProduct` has a class enum, `BaselineCalcType` that determines how asf-search will handle perpendicular stack calculations. Each subclass keeps track of their baseline calculation type via the `baseline_type` property.\n", "\n", - "The three `BaselineCalcType` types:\n", - "- `NONE` Cannot be used in baseline calculations\n", - "- `PRE_CALCULATED` Has pre-calculated insarBaseline value that will be used for perpendicular calculations\n", + "Inherits: `ASFProduct`\n", + "\n", + "Inherited By:\n", + "- `ALOSProduct`\n", + "- `ERSProduct`\n", + "- `JERSProduct`\n", + "- `RadarsatProduct`\n", + "- `S1Product`\n", + " - `S1BurstProduct`\n", + " - `OPERAS1Product` (Stacking currently disabled)\n", + " - `ARIAS1GUNWProduct` (Stacking currently disabled)\n", + "\n", + "Key Methods:\n", + "- `get_baseline_calc_properties()`\n", + "- `get_stack_opts()` (Overrides `ASFproduct`)\n", + "- `is_valid_reference()`\n", + "- `get_default_baseline_product_type()`\n", + "\n", + "Key Definitions:\n", + "class enum `BaselineCalcType`:\n", + "- `PRE_CALCULATED` Has pre-calculated `insarBaseline` value that will be used for perpendicular calculations\n", "- `CALCULATED` Uses position/velocity state vectors and ascending node time for perpendicular calculations\n", "\n", - "Any subclass object that changes `baseline_type` from the default of `BaselineCalcType.NONE` is elligble for building a baseline stacking with `ASFProduct.stack()` (see the 4-Baseline_Search.ipynb example notebook for more examples of baseline stacking)." + "Key Fields:\n", + "- `baseline`\n", + "- `baseline_type` (`BaselineCalcType.PRE_CALCULATED` by default or `BaselineCalcType.CALCULATED`)\n", + "\n" ] }, { @@ -96,7 +139,7 @@ "outputs": [], "source": [ "print(f\"Baseline Calculation Types\")\n", - "print(f\"ASFProduct:\\t {asf.ASFProduct.baseline_type}\")\n", + "print(f\"ASFProduct:\\t {asf.ASFStackableProduct.baseline_type}\")\n", "print(f\"ALOSProduct:\\t {alos.baseline_type}\")\n", "print(f\"S1Product:\\t {s1.baseline_type}\")" ] @@ -105,7 +148,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "`ASFProduct` subclasses even have their own stack search option methods. The `ASFProduct` implementation of `get_stack_opts()` returns `None`, but subclasses like `S1Product` and `ALOSProduct` have different approaches." + "`ASFStackableProduct` subclasses even have their own stack search option methods. The `ASFStackableProduct` implementation of `get_stack_opts()` returns the commonly used params for pre-calculated datasets (processing level and insar stack ID), but subclasses like `S1Product` and `S1BurstProduct` use their own approach. " ] }, { @@ -115,6 +158,7 @@ "outputs": [], "source": [ "print(f\"S1Product:\\n{s1.get_stack_opts()}\\n\")\n", + "print(f\"S1BURSTProduct:\\n{s1Burst.get_stack_opts()}\\n\")\n", "print(f\"ALOSProduct:\\n{alos.get_stack_opts()}\")" ] }, @@ -122,29 +166,10 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Sublcasses of type `ASFProduct` can just as easily be parent classes to other subclasses, like `S1Product`, which is the parent class to `S1BurstProduct` and `ARIAS1GUNWProduct`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(\"S1BurstProduct:\")\n", - "print(f\"\\tburst dict:\\n\\t{s1Burst.properties['burst']}\")\n", - "print(f\"\\nS1BurstProduct.get_stack_opts(): {s1Burst.get_stack_opts()}\\n\\n\")\n", + "# Writing Custom `ASFProduct` Subclasses\n", + "Because `ASFProduct` is built for subclassing, that means users can provide their own custom subclasses dervied directly from `ASFProduct` or even from a pre-existing subclass like `S1Product` or `OperaS1Product`.\n", "\n", - "print(f\"ARIAS1GUNWProduct:\")\n", - "print(f\"\\tperpendicularBaseline: {ariaGunw.properties['perpendicularBaseline']}\")\n", - "print(f\"\\tOrbit: {ariaGunw.properties['orbit']}\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Because `ASFProduct` is built for subclassing, that means users can provide their own custom subclasses." + "In this example we subclass `S1Product`, and overrides the default `ASFProduct.stack()` with one that returns a _list_ of `S1BurstProduct` stacks based on an area of interest, modify `geojson()` to return state vectors, and add a new helper method for getting raw umm CMR response!" ] }, { @@ -229,17 +254,22 @@ " useSubclass: Type[asf.ASFProduct] = None,\n", " aoi: str = None\n", " ) -> Union[ASFSearchResults, List[ASFSearchResults]]:\n", - " \n", + "\n", " bursts = asf.search(\n", " groupID=self.properties['groupID'], \n", " processingLevel=asf.PRODUCT_TYPE.BURST,\n", " intersectsWith=aoi if aoi is not None else opts.intersectsWith\n", " )\n", - "\n", - " if len(bursts) == 0: # build a regular stack of SLCs if there's no SLC-BURST\n", - " return super().stack(opts=opts, useSubclass=useSubclass)\n", " \n", - " return [burst.stack(opts=opts) for burst in bursts]\n", + " return [burst.stack(opts=opts) for burst in bursts]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ "\n", "customS1SubclassProduct = MyCustomS1Subclass({'umm': s1.umm, 'meta': s1.meta}, session=s1.session)\n", "\n", @@ -269,8 +299,8 @@ "metadata": {}, "outputs": [], "source": [ - "fairbanks_area = 'LINESTRING(-147.2885 64.7464,-147.733 64.8586,-148.1878 64.731)'\n", - "customStack = customS1SubclassProduct.stack(aoi=fairbanks_area)\n", + "palmer_to_anchorage = 'LINESTRING(-149.1052 61.6054,-149.5376 61.3162,-149.8764 61.2122)'\n", + "customStack = customS1SubclassProduct.stack(aoi=palmer_to_anchorage)\n", "customStack" ] }, @@ -293,7 +323,7 @@ "def view_stack_of_stacks(stack_of_stacks: List):\n", " print(f'Found {len(stack_of_stacks)} SLC-BURST stacks over AOI, stack lengths:')\n", " for stack_idx, stack in enumerate(stack_of_stacks):\n", - " print(f\"\\t{stack_idx+1}:\\t{len(stack)} SLC-BURSTs \\t(Full Burst ID: {stack[-1].properties['burst']['fullBurstID']})\")\n", + " print(f\"\\t{stack_idx+1}:\\t{len(stack)} SLC-BURSTs \\t(Full Burst ID: {stack[-1].properties['burst']['fullBurstID']}, polarization: {stack[-1].properties['polarization']})\")\n", "\n", "view_stack_of_stacks(customStack)" ] @@ -313,9 +343,9 @@ "metadata": {}, "outputs": [], "source": [ - "opts = asf.ASFSearchOptions(intersectsWith=fairbanks_area) # our custom class will be able to use our aoi this way\n", + "opts = asf.ASFSearchOptions(intersectsWith=palmer_to_anchorage) # our custom class will be able to use our aoi this way\n", "\n", - "customSubclassStack = asf.stack_from_id('S1A_IW_SLC__1SDV_20231224T032123_20231224T032150_051791_064179_16F5-SLC', opts=opts, useSubclass=MyCustomS1Subclass)\n", + "customSubclassStack = asf.stack_from_id('S1A_IW_SLC__1SDV_20231226T162948_20231226T163016_051828_0642C6_272F-SLC', opts=opts, useSubclass=MyCustomS1Subclass)\n", "\n", "view_stack_of_stacks(customSubclassStack)" ] From 8e4c6b207b09da405c0356a9bdda9263250a9fd1 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 18 Jan 2024 15:55:10 -0900 Subject: [PATCH 87/95] fix: wrong placement of default is_valid_reference() in S1Product --- asf_search/Products/ARIAS1GUNWProduct.py | 4 ++++ asf_search/Products/OPERAS1Product.py | 1 - asf_search/Products/S1Product.py | 3 --- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/asf_search/Products/ARIAS1GUNWProduct.py b/asf_search/Products/ARIAS1GUNWProduct.py index 65b4811f..2d88419a 100644 --- a/asf_search/Products/ARIAS1GUNWProduct.py +++ b/asf_search/Products/ARIAS1GUNWProduct.py @@ -41,6 +41,10 @@ def get_stack_opts(self, opts: ASFSearchOptions = None) -> ASFSearchOptions: """ return None + + def is_valid_reference(self): + return False + @staticmethod def get_default_baseline_product_type() -> None: """ diff --git a/asf_search/Products/OPERAS1Product.py b/asf_search/Products/OPERAS1Product.py index 6a1bbff5..0e3e1676 100644 --- a/asf_search/Products/OPERAS1Product.py +++ b/asf_search/Products/OPERAS1Product.py @@ -72,7 +72,6 @@ def get_default_baseline_product_type() -> None: """ return None - def is_valid_reference(self): return False diff --git a/asf_search/Products/S1Product.py b/asf_search/Products/S1Product.py index 6ab109a7..25282de7 100644 --- a/asf_search/Products/S1Product.py +++ b/asf_search/Products/S1Product.py @@ -132,9 +132,6 @@ def is_valid_reference(self) -> bool: return False return True - - def is_valid_reference(self): - return False @staticmethod def get_default_baseline_product_type() -> str: From edf54335748f3e8427cd911145dace7d1a4129e3 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 23 Jan 2024 09:42:22 -0900 Subject: [PATCH 88/95] adds: opera calibration datasets (OPERA-S1-CALIBRATION and OPERA-S1-CALIBRATION-STATIC) --- asf_search/CMR/datasets.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index 40abf2fe..6bcb8fb6 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -162,9 +162,13 @@ "OPERA_L2_RTC-S1-STATIC_PROVISIONAL_V0": ["C1258354201-ASF"], "OPERA_L2_RTC-S1-STATIC_V1": ["C1259981910-ASF", "C2795135174-ASF"], "OPERA_L2_RTC-S1_PROVISIONAL_V0": ["C1257995186-ASF"], - "OPERA_L2_CSLC-S1-STATIC_CALVAL_V1": ["C1260726384-ASF", "C2803502140-ASF"], + }, + "OPERA-S1-CALIBRATION": { "OPERA_L2_CSLC-S1_CALVAL_V1": ["C1260721945-ASF", "C2803501758-ASF"], "OPERA_L2_RTC-S1_CALVAL_V1": ["C1260721853-ASF", "C2803501097-ASF"], + }, + "OPERA-S1-CALIBRATION-STATIC": { + "OPERA_L2_CSLC-S1-STATIC_CALVAL_V1": ["C1260726384-ASF", "C2803502140-ASF"], "OPERA_L2_RTC-S1-STATIC_CALVAL_V1": ["C1260726378-ASF", "C2803500298-ASF"], }, "SLC-BURST": {"SENTINEL-1_BURSTS": ["C2709161906-ASF", "C1257024016-ASF"]}, From ace7feaaea7ada86dd2bbacf70b5c917602c3628 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 23 Jan 2024 15:37:17 -0900 Subject: [PATCH 89/95] add: Makes ASFSession more flexible with constructor parameters/class variables --- CHANGELOG.md | 15 +++++++++++++ asf_search/ASFSession.py | 47 ++++++++++++++++++++++++++++++++++------ 2 files changed, 55 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48892828..11f72d6f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,21 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - --> +------ +## [v.7.0.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.3...v.7.0.0) +### Added +- Adds optional `ASFSession` constructor keyword arguments for new class variables: + - `edl_host` + - `edl_client_id` + - `asf_auth_host` + - `cmr_host` + - `cmr_collections` + - `auth_domains` + +### Changed +- `ASFSession` imports `asf_search.constants.INTERNAL` in constructor call +- `ASFSession` methods `auth_with_creds()`, `auth_with_token()`, and `rebuild_auth()` use new class variables instead of constants + ------ ## [v6.7.3](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.2...v6.7.3) ### Added diff --git a/asf_search/ASFSession.py b/asf_search/ASFSession.py index 951a46a2..f7402585 100644 --- a/asf_search/ASFSession.py +++ b/asf_search/ASFSession.py @@ -3,12 +3,36 @@ from requests.utils import get_netrc_auth import http.cookiejar from asf_search import __name__ as asf_name, __version__ as asf_version -from asf_search.constants import EDL_CLIENT_ID, EDL_HOST, ASF_AUTH_HOST, AUTH_DOMAINS, CMR_HOST, CMR_COLLECTIONS from asf_search.exceptions import ASFAuthenticationError class ASFSession(requests.Session): - - def __init__(self): + def __init__(self, + edl_host: str = None, + edl_client_id: str = None, + asf_auth_host: str = None, + cmr_host: str = None, + cmr_collections: str = None, + auth_domains: str = None + ): + """ + ASFSession is a subclass of `requests.Session`, and is meant to ease downloading ASF hosted data by simplifying logging in to Earthdata Login. + To create an EDL account, see here: https://urs.earthdata.nasa.gov/users/new + + ASFSession provides three built-in methods for authorizing downloads: + - EDL Username and Password: `auth_with_creds()` + - EDL Token: `auth_with_token()` + - Authenticated cookiejars: `auth_with_cookiejar()` + + `edl_host`: the Earthdata login endpoint used by auth_with_creds(). Defaults to `asf_search.constants.INTERNAL.EDL_HOST` + `edl_client_id`: The Earthdata Login client ID for this package. Defaults to `asf_search.constants.INTERNAL.EDL_CLIENT_ID` + `asf_auth_host`: the ASF auth endpoint . Defaults to `asf_search.constants.INTERNAL.ASF_AUTH_HOST` + `cmr_host`: the base CMR endpoint to test EDL login tokens against. Defaults to `asf_search.constants.INTERNAL.CMR_HOST` + `cmr_collections`: the CMR endpoint path login tokens will be tested against. Defaults to `asf_search.constants.INTERNAL.CMR_COLLECTIONS` + `auth_domains`: the list of authorized endpoints that are allowed to pass auth credentials. Defaults to `asf_search.constants.INTERNAL.AUTH_DOMAINS`. Authorization headers WILL NOT be stripped from the session object when redirected through these domains. + + More information on Earthdata Login can be found here: + https://urs.earthdata.nasa.gov/documentation/faq + """ super().__init__() user_agent = '; '.join([ f'Python/{platform.python_version()}', @@ -18,6 +42,15 @@ def __init__(self): self.headers.update({'User-Agent': user_agent}) # For all hosts self.headers.update({'Client-Id': f"{asf_name}_v{asf_version}"}) # For CMR + from asf_search.constants import INTERNAL + + self.edl_host = INTERNAL.EDL_HOST if edl_host is None else edl_host + self.edl_client_id = INTERNAL.EDL_CLIENT_ID if edl_client_id is None else edl_client_id + self.asf_auth_host = INTERNAL.ASF_AUTH_HOST if asf_auth_host is None else asf_auth_host + self.cmr_host = INTERNAL.CMR_HOST if cmr_host is None else cmr_host + self.cmr_collections = INTERNAL.CMR_COLLECTIONS if cmr_collections is None else cmr_collections + self.auth_domains = INTERNAL.AUTH_DOMAINS if auth_domains is None else auth_domains + def __eq__(self, other): return self.auth == other.auth \ and self.headers == other.headers \ @@ -33,7 +66,7 @@ def auth_with_creds(self, username: str, password: str): :return ASFSession: returns self for convenience """ - login_url = f'https://{EDL_HOST}/oauth/authorize?client_id={EDL_CLIENT_ID}&response_type=code&redirect_uri=https://{ASF_AUTH_HOST}/login' + login_url = f'https://{self.edl_host}/oauth/authorize?client_id={self.edl_client_id}&response_type=code&redirect_uri=https://{self.asf_auth_host}/login' self.auth = (username, password) self.get(login_url) @@ -53,7 +86,7 @@ def auth_with_token(self, token: str): """ self.headers.update({'Authorization': 'Bearer {0}'.format(token)}) - url = f"https://{CMR_HOST}{CMR_COLLECTIONS}" + url = f"https://{self.cmr_host}{self.cmr_collections}" response = self.get(url) if not 200 <= response.status_code <= 299: @@ -95,8 +128,8 @@ def rebuild_auth(self, prepared_request: requests.Request, response: requests.Re redirect_domain = '.'.join(self._get_domain(url).split('.')[-3:]) if (original_domain != redirect_domain - and (original_domain not in AUTH_DOMAINS - or redirect_domain not in AUTH_DOMAINS)): + and (original_domain not in self.auth_domains + or redirect_domain not in self.auth_domains)): del headers['Authorization'] new_auth = get_netrc_auth(url) if self.trust_env else None From 29f968188b7f269f94455c28339ee50b884a83f6 Mon Sep 17 00:00:00 2001 From: kim Date: Tue, 23 Jan 2024 15:45:56 -0900 Subject: [PATCH 90/95] chore: adds OPERA_S1_CALIBRATION constant, update CHANGELOG --- CHANGELOG.md | 8 ++++++++ asf_search/CMR/datasets.py | 4 ---- asf_search/constants/DATASET.py | 1 + 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48892828..a8f69a80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,14 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - --> +------ +## [v.7.0.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.3...v.7.0.0) +### Added +- Adds `OPERA-S1-CALIBRATION` entry to `dataset_collections` and corresponding `OPERA_S1_CALIBRATION` constant to `DATASET.py`, used to search for OPERA-S1 `CSLC` and `RTC` calibration data. + +### Changed +- `OPERA-S1` dataset no longer includes calibration data (moved to new dataset) + ------ ## [v6.7.3](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.2...v6.7.3) ### Added diff --git a/asf_search/CMR/datasets.py b/asf_search/CMR/datasets.py index 6bcb8fb6..3eb23fcc 100644 --- a/asf_search/CMR/datasets.py +++ b/asf_search/CMR/datasets.py @@ -167,10 +167,6 @@ "OPERA_L2_CSLC-S1_CALVAL_V1": ["C1260721945-ASF", "C2803501758-ASF"], "OPERA_L2_RTC-S1_CALVAL_V1": ["C1260721853-ASF", "C2803501097-ASF"], }, - "OPERA-S1-CALIBRATION-STATIC": { - "OPERA_L2_CSLC-S1-STATIC_CALVAL_V1": ["C1260726384-ASF", "C2803502140-ASF"], - "OPERA_L2_RTC-S1-STATIC_CALVAL_V1": ["C1260726378-ASF", "C2803500298-ASF"], - }, "SLC-BURST": {"SENTINEL-1_BURSTS": ["C2709161906-ASF", "C1257024016-ASF"]}, "ALOS PALSAR": { "ALOS_PSR_RTC_HIGH": ["C1206487504-ASF", "C1207181535-ASF"], diff --git a/asf_search/constants/DATASET.py b/asf_search/constants/DATASET.py index 2ccf52ea..2e4aeac4 100644 --- a/asf_search/constants/DATASET.py +++ b/asf_search/constants/DATASET.py @@ -1,5 +1,6 @@ SENTINEL1 = 'SENTINEL-1' OPERA_S1 = 'OPERA-S1' +OPERA_S1_CALIBRATION = 'OPERA-S1-CALIBRATION' SLC_BURST = 'SLC-BURST' ALOS_PALSAR = 'ALOS PALSAR' ALOS_AVNIR_2 = 'ALOS AVNIR-2' From c9cf2b2a2dee50b51eae0c08c52ff2618a429fd4 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 24 Jan 2024 09:48:19 -0900 Subject: [PATCH 91/95] moves missing state vector count into method --- asf_search/baseline/stack.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/asf_search/baseline/stack.py b/asf_search/baseline/stack.py index 60fb6597..5838d69d 100644 --- a/asf_search/baseline/stack.py +++ b/asf_search/baseline/stack.py @@ -24,11 +24,15 @@ def get_baseline_from_stack(reference: ASFProduct, stack: ASFSearchResults) -> T else: stack = calculate_perpendicular_baselines(reference.properties['sceneName'], stack) - if missing_state_vectors := len([scene for scene in stack if scene.baseline.get('noStateVectors')]): + missing_state_vectors = _count_missing_state_vectors(stack) + if missing_state_vectors > 0: warnings.append({'MISSING STATE VECTORS': f'{missing_state_vectors} scenes in stack missing State Vectors, perpendicular baseline not calculated for these scenes'}) return ASFSearchResults(stack), warnings - + +def _count_missing_state_vectors(stack) -> int: + return len([scene for scene in stack if scene.baseline.get('noStateVectors')]) + def valid_state_vectors(product: ASFProduct): if product is None: raise ValueError('Attempting to check state vectors on None, this is fatal') From 7eef0c55de2cbb4b169ea95291b81d42e2258779 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 24 Jan 2024 11:39:17 -0900 Subject: [PATCH 92/95] adds conda install mention in remotezip ImportError message --- asf_search/download/download.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asf_search/download/download.py b/asf_search/download/download.py index fce5e8d9..a07ffff2 100644 --- a/asf_search/download/download.py +++ b/asf_search/download/download.py @@ -83,7 +83,7 @@ def remotezip(url: str, session: ASFSession) -> 'RemoteZip': :param session: the authenticated ASFSession to read and download from the zip file """ if RemoteZip is None: - raise ImportError("Could not find remotezip package in current python environment. \"remotezip\" is an optional dependency of asf-search required for the `remotezip()` method, and can be install via `python3 -m pip install asf-search[extras]`") + raise ImportError("Could not find remotezip package in current python environment. \"remotezip\" is an optional dependency of asf-search required for the `remotezip()` method. Enable by including the appropriate pip or conda install. Ex: `python3 -m pip install asf-search[extras]`") session.hooks['response'].append(strip_auth_if_aws) return RemoteZip(url, session=session) From e296d748970cc0cb985dbfc5cdc123a9c5bff0a8 Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 24 Jan 2024 14:24:41 -0900 Subject: [PATCH 93/95] fix: fixes ASFSession to work with multiprocessing. Fix base class _parse_filename_from_url() --- asf_search/ASFProduct.py | 2 +- asf_search/ASFSession.py | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 639741c1..fbc3b144 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -147,7 +147,7 @@ def _get_additional_filenames_and_urls( self, default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) ) -> List[Tuple[str, str]]: - return [(self._parse_filename_from_url(url), url) for url in self.properties['additionalUrls']] + return [(self._parse_filename_from_url(url), url) for url in self.properties.get('additionalUrls', [])] def _parse_filename_from_url(self, url: str) -> str: file_path = os.path.split(parse.urlparse(url).path) diff --git a/asf_search/ASFSession.py b/asf_search/ASFSession.py index f7402585..dddf4494 100644 --- a/asf_search/ASFSession.py +++ b/asf_search/ASFSession.py @@ -138,3 +138,18 @@ def rebuild_auth(self, prepared_request: requests.Request, response: requests.Re def _get_domain(self, url: str): return requests.utils.urlparse(url).hostname + + # multi-processing does an implicit copy of ASFSession objects, + # this ensures ASFSession class variables are included + def __getstate__(self): + state = super().__getstate__() + state = { + **state, + 'edl_host': self.edl_host, + 'edl_client_id': self.edl_client_id, + 'asf_auth_host': self.asf_auth_host, + 'cmr_host': self.cmr_host, + 'cmr_collections': self.cmr_collections, + 'auth_domains': self.auth_domains + } + return state From a1c603bd8c5b507a7afc98efc8fc552f4940680c Mon Sep 17 00:00:00 2001 From: Kim <33294735+SpicyGarlicAlbacoreRoll@users.noreply.github.com> Date: Wed, 24 Jan 2024 14:33:10 -0900 Subject: [PATCH 94/95] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 04937d29..1025dc56 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,7 +36,7 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - Adds `OPERA-S1-CALIBRATION` entry to `dataset_collections` and corresponding `OPERA_S1_CALIBRATION` constant to `DATASET.py`, used to search for OPERA-S1 `CSLC` and `RTC` calibration data. ### Changed -- `remotezip` is now an optional dependency, installable via `python3 -m pip install asf-search[extras]` +- `remotezip` is now an optional dependency of asf-search's pip and conda installs, (pip install example: `python3 -m pip install asf-search[extras]`). - Constants are no longer top level import, are now accessible through respective modules - `processingLevel` and `platform` are now aliased by collection concept-ids, (lists of concept ids by their processing levels/platforms viewable in `dataset.py`), improving search performance and dodging subquery system - Baseline stacking no longer excludes products with missing state vectors from final stack, like SearchAPI From 3f65f0653fa9cb0f93e71ac2007f4aa754465cea Mon Sep 17 00:00:00 2001 From: kim Date: Wed, 24 Jan 2024 15:14:12 -0900 Subject: [PATCH 95/95] chore: normalize capitalization for dataset products that are acronyms --- CHANGELOG.md | 2 +- asf_search/ASFProduct.py | 2 +- .../Products/{RadarsatProduct.py => RADARSATProduct.py} | 4 ++-- .../Products/{S1BURSTProduct.py => S1BurstProduct.py} | 4 ++-- asf_search/Products/__init__.py | 4 ++-- asf_search/search/search_generator.py | 4 ++-- examples/Advanced-Custom-ASFProduct-Subclassing.ipynb | 8 ++++---- 7 files changed, 14 insertions(+), 14 deletions(-) rename asf_search/Products/{RadarsatProduct.py => RADARSATProduct.py} (93%) rename asf_search/Products/{S1BURSTProduct.py => S1BurstProduct.py} (98%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1025dc56..61e6a683 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,7 +29,7 @@ and uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [v.7.0.0](https://github.com/asfadmin/Discovery-asf_search/compare/v6.7.3...v.7.0.0) ### Added - `ASFProduct` now has 13 sublcasses for different sub-products that correspond to datasets: - - `S1Product`, `S1BURSTProduct`, `OPERAS1Product`, `ARIAS1GUNWProduct`, `ALOSProduct`, `RadarsatProduct`, `AIRSARProduct`, `ERSProduct`, `JERSProduct`, `UAVSARProduct`, `SIRCProduct`, `SEASATProduct`, `SMAPProduct` + - `S1Product`, `S1BurstProduct`, `OPERAS1Product`, `ARIAS1GUNWProduct`, `ALOSProduct`, `RADARSATProduct`, `AIRSARProduct`, `ERSProduct`, `JERSProduct`, `UAVSARProduct`, `SIRCProduct`, `SEASATProduct`, `SMAPProduct` - Each subclass defines relevant keys to pull from `umm` response, reducing the amount of irrelevant values in `properties` dict for certain product types - Adds `collectionAlias` to `ASFSearchOptions` validator map as config param. Set to `False` to disable concept-id aliasing behaviour for `processingLevel` and `platform`. - Adds warning when scenes in stack are missing state vectors, and logs baseline warnings with `ASF_LOGGER` diff --git a/asf_search/ASFProduct.py b/asf_search/ASFProduct.py index 69e212f7..f3a3df2b 100644 --- a/asf_search/ASFProduct.py +++ b/asf_search/ASFProduct.py @@ -143,7 +143,7 @@ def download(self, path: str, filename: str = None, session: ASFSession = None, def _get_additional_filenames_and_urls( self, - default_filename: str = None # for subclasses without fileName in url (see S1BURSTProduct implementation) + default_filename: str = None # for subclasses without fileName in url (see S1BurstProduct implementation) ) -> List[Tuple[str, str]]: return [(self._parse_filename_from_url(url), url) for url in self.properties.get('additionalUrls', [])] diff --git a/asf_search/Products/RadarsatProduct.py b/asf_search/Products/RADARSATProduct.py similarity index 93% rename from asf_search/Products/RadarsatProduct.py rename to asf_search/Products/RADARSATProduct.py index 19aa1228..7db7f1b2 100644 --- a/asf_search/Products/RadarsatProduct.py +++ b/asf_search/Products/RADARSATProduct.py @@ -4,7 +4,7 @@ from asf_search.constants import PRODUCT_TYPE -class RadarsatProduct(ASFStackableProduct): +class RADARSATProduct(ASFStackableProduct): """ ASF Dataset Documentation Page: https://asf.alaska.edu/datasets/daac/radarsat-1/ """ @@ -22,7 +22,7 @@ def __init__(self, args: Dict = {}, session: ASFSession = ASFSession()): def get_property_paths() -> Dict: return { **ASFStackableProduct.get_property_paths(), - **RadarsatProduct._base_properties + **RADARSATProduct._base_properties } @staticmethod diff --git a/asf_search/Products/S1BURSTProduct.py b/asf_search/Products/S1BurstProduct.py similarity index 98% rename from asf_search/Products/S1BURSTProduct.py rename to asf_search/Products/S1BurstProduct.py index 9b61ec2e..9bd59662 100644 --- a/asf_search/Products/S1BURSTProduct.py +++ b/asf_search/Products/S1BurstProduct.py @@ -5,7 +5,7 @@ from asf_search.CMR.translate import try_parse_int from asf_search.constants import PRODUCT_TYPE -class S1BURSTProduct(S1Product): +class S1BurstProduct(S1Product): """ S1Product Subclass made specifically for Sentinel-1 SLC-BURST products @@ -69,7 +69,7 @@ def get_stack_opts(self, opts: ASFSearchOptions = None): def get_property_paths() -> Dict: return { **S1Product.get_property_paths(), - **S1BURSTProduct._base_properties + **S1BurstProduct._base_properties } def _get_additional_filenames_and_urls(self, default_filename: str = None): diff --git a/asf_search/Products/__init__.py b/asf_search/Products/__init__.py index 27674a8b..dbdad6fe 100644 --- a/asf_search/Products/__init__.py +++ b/asf_search/Products/__init__.py @@ -1,6 +1,6 @@ from .S1Product import S1Product from .ALOSProduct import ALOSProduct -from .RadarsatProduct import RadarsatProduct +from .RADARSATProduct import RADARSATProduct from .AIRSARProduct import AIRSARProduct from .ERSProduct import ERSProduct from .JERSProduct import JERSProduct @@ -8,6 +8,6 @@ from .SIRCProduct import SIRCProduct from .SEASATProduct import SEASATProduct from .SMAPProduct import SMAPProduct -from .S1BURSTProduct import S1BURSTProduct +from .S1BurstProduct import S1BurstProduct from .OPERAS1Product import OPERAS1Product from .ARIAS1GUNWProduct import ARIAS1GUNWProduct diff --git a/asf_search/search/search_generator.py b/asf_search/search/search_generator.py index c3f5dffa..f437eee4 100644 --- a/asf_search/search/search_generator.py +++ b/asf_search/search/search_generator.py @@ -283,7 +283,7 @@ def _get_product_type_key(item: Dict) -> str: dataset_to_product_types = { 'SENTINEL-1': ASFProductType.S1Product, 'OPERA-S1': ASFProductType.OPERAS1Product, - 'SLC-BURST': ASFProductType.S1BURSTProduct, + 'SLC-BURST': ASFProductType.S1BurstProduct, 'ALOS': ASFProductType.ALOSProduct, @@ -298,7 +298,7 @@ def _get_product_type_key(item: Dict) -> str: 'UAVSAR': ASFProductType.UAVSARProduct, 'G-III': ASFProductType.UAVSARProduct, - 'RADARSAT-1': ASFProductType.RadarsatProduct, + 'RADARSAT-1': ASFProductType.RADARSATProduct, 'ERS': ASFProductType.ERSProduct, 'ERS-1': ASFProductType.ERSProduct, diff --git a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb index f2610ff1..804f1667 100644 --- a/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb +++ b/examples/Advanced-Custom-ASFProduct-Subclassing.ipynb @@ -43,7 +43,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Notice the different type in the `results` list: `S1Product`, `S1BURSTProduct`, `ARIAS1GUNWProduct`, `ALOSProduct`, and `UAVSARProduct`.\n", + "Notice the different type in the `results` list: `S1Product`, `S1BurstProduct`, `ARIAS1GUNWProduct`, `ALOSProduct`, and `UAVSARProduct`.\n", "Each of these classes are subclassed from `ASFProduct` in some way.\n", "\n", "Let's compare the `properties` of `S1Product` and `ALOSProduct`" @@ -109,7 +109,7 @@ "- `ALOSProduct`\n", "- `ERSProduct`\n", "- `JERSProduct`\n", - "- `RadarsatProduct`\n", + "- `RADARSATProduct`\n", "- `S1Product`\n", " - `S1BurstProduct`\n", " - `OPERAS1Product` (Stacking currently disabled)\n", @@ -158,7 +158,7 @@ "outputs": [], "source": [ "print(f\"S1Product:\\n{s1.get_stack_opts()}\\n\")\n", - "print(f\"S1BURSTProduct:\\n{s1Burst.get_stack_opts()}\\n\")\n", + "print(f\"S1BurstProduct:\\n{s1Burst.get_stack_opts()}\\n\")\n", "print(f\"ALOSProduct:\\n{alos.get_stack_opts()}\")" ] }, @@ -308,7 +308,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Notice instead of a stack of `MyCustomS1Subclass` products we have a list of `S1BURSTProduct` stacks!\n", + "Notice instead of a stack of `MyCustomS1Subclass` products we have a list of `S1BurstProduct` stacks!\n", "Below is a breakdown of this list of stacks:" ] },