Accessing ICESat-2 Data Using icepyx¶

This notebook illustrates the use of icepyx for programmatic ICESat-2 data query and download from the NASA NSIDC DAAC (NASA National Snow and Ice Data Center Distributed Active Archive Center). A similar data access notebook provides more details on inputs and user options, and a complimentary notebook demonstrates in greater detail the subsetting options available when ordering data.


Polling question

What are the biggest hurdles you face when accessing ICESat-2 (or other) data programmatically?


Motivation and Background¶

icepyx is a wrapper on top of the NSIDC API, originally created to make programmatic access to ICESat-2 data easier. The library is open-source, community developed and driven, and was created in response to user challenges faced at the 2019 ICESat-2 Cryosphere-themed Hackweek. At that time, the earthdata library had not been developed, and there was a steep learning curve for programmatic access to ICESat-2 data.

The earthdata and icepyx developers are working together to leverage the strengths of each library, ensure compatibility, and reduce duplication of effort by sharing infrastructure (e.g. Earthdata authentication for data access).

ICESat-2 data access and tools comparison checklist

Fig. 1 Checklist illustrating the relative strengths of the icepyx, earthdata, and other ICESat-2 tools.¶

Under continuous development, we think you’ll find icepyx a useful resource and encourage you to contribute your ideas, code, and feedback to enhance its use throughout your entire ICESat-2 workflow. In addition to the programmatic data access presented here, icepyx also includes modules for:

  • loading data into memory (with plans for lazy loading via Dask)

  • cloud data access (via a soon-to-be familiar interface)

  • ICESat-2’s nested data variable management

  • templates for adding other data sources (QUEST - Query Unify Explore SpatioTemporal; currently finalizing the integration of Argo data as our first example case).

We hope that this year’s Hackweek continues to expand our ICESat-2 data-user community and sparks future feature development, both through hacking projects and beyond.

Computing environment¶

We’ll be using the following open source Python libraries in this notebook:

import icepyx as ipx
%matplotlib inline

Key Steps for Programmatic Data Access¶

There are several key steps for accessing data from the NSIDC API:

  1. Define your parameters (spatial, temporal, dataset, etc.)

  2. Query the NSIDC API to find out more information about the dataset

  3. Log in to NASA Earthdata

  4. Define additional parameters (e.g. subsetting/customization options)

  5. Order your data

  6. Download your data

icepyx streamlines this process into a minimal number of lines of code.

Step 1: Create an ICESat-2 data object with the desired search parameters¶

There are three required inputs, depending on how you want to search for data. Two are required in all cases:

  • short_name = the data product of interest, known as its “short name”. See https://nsidc.org/data/icesat-2/data-sets for a list of the available data products.

  • spatial extent = a region of interest to search within. This can be entered as a bounding box, polygon vertex coordinate pairs, or a polygon geospatial file (currently shp, kml, and gpkg are supported).

    • bounding box: Given in decimal degrees for the lower left longitude, lower left latitude, upper right longitude, and upper right latitude

    • polygon vertices: Given as longitude, latitude coordinate pairs of decimal degrees with the last entry a repeat of the first.

    • polygon file: A string containing the full file path and name.

Then, for all non-gridded products (ATL<=13), you must include AT LEAST one of the following inputs (temporal or orbital constraints):

  • date_range = the date range for which you would like to search for results. Must be formatted as a set of ‘YYYY-MM-DD’ strings separated by a comma.

  • cycles = Which orbital cycle to use, input as a numerical string or a list of strings. If no input is given, this value defaults to all available cycles within the search parameters. An orbital cycle refers to the 91-day repeat period of the ICESat-2 orbit.

  • tracks = Which Reference Ground Track (RGT) to use, input as a numerical string or a list of strings. If no input is given, this value defaults to all available RGTs within the spatial and temporal search parameters.

Warning: Although you can use cycles and tracks to identify available granules, unfortunately you will not be able to order this specific list of granules using `ipx.order_granules()`. This is because NSIDC cannot currently handle orders for granules filtered by cycle and track. As of March 2022, NSIDC is working on this issue; it will become available via icepyx after it is resolved.

Here we will use a bounding box example. Please see the icepyx documentation for examples using other spatial_extent types or to search for granules using orbital parameters.

# bounding box
short_name = 'ATL06'
spatial_extent = [-55, 68, -48, 71]
date_range = ['2019-02-20','2019-02-28']

Create the data object using our inputs

region_a = ipx.Query(short_name, spatial_extent, date_range)

Formatted parameters and function calls allow us to see the the properties of the data object we have created.

print(region_a.product)
print(region_a.dates)
print(region_a.start_time)
print(region_a.end_time)
print(region_a.cycles)
print(region_a.tracks)
print(region_a.product_version)
region_a.visualize_spatial_extent()
ATL06
['2019-02-20', '2019-02-28']
00:00:00
23:59:59
['No orbital parameters set']
['No orbital parameters set']
005

There are also several optional inputs to allow the user finer control over their search. Start and end time are only valid inputs on a temporally limited search.

  • start_time = start time to search for data on the start date. If no input is given, this defaults to 00:00:00.

  • end_time = end time for the end date of the temporal search parameter. If no input is given, this defaults to 23:59:59. Times must be input as ‘HH:mm:ss’ strings.

  • version = What version of the data product to use, input as a numerical string. If no input is given, this value defaults to the most recent version of the product specified in short_name.

NOTE It is best to use the most recent version where possible. If you try to order/download too old a version (such that it is no longer hosted by NSIDC), you will get a “no data matched your request” error.

More information about your query object¶

In addition to viewing the stored object information shown above (e.g. product short name, start and end date and time, version, etc.), we can also request summary information about the data product itself or confirm that we have manually specified the latest version.

region_a.product_summary_info()
print(region_a.latest_version())
title :  ATLAS/ICESat-2 L3A Land Ice Height V005
short_name :  ATL06
version_id :  005
time_start :  2018-10-14T00:00:00.000Z
coordinate_system :  CARTESIAN
summary :  This data set (ATL06) provides geolocated, land-ice surface heights (above the WGS 84 ellipsoid, ITRF2014 reference frame), plus ancillary parameters that can be used to interpret and assess the quality of the height estimates. The data were acquired by the Advanced Topographic Laser Altimeter System (ATLAS) instrument on board the Ice, Cloud and land Elevation Satellite-2 (ICESat-2) observatory.
orbit_parameters :  {'swath_width': '36.0', 'period': '96.8', 'inclination_angle': '92.0', 'number_of_orbits': '0.071428571', 'start_circular_latitude': '0.0'}
005

If the summary does not provide all of the information you are looking for, or you would like to see information for previous versions of the data product, all available metadata for the collection product is available in a readable format.

region_a.product_all_info()
{'feed': {'entry': [{'archive_center': 'NASA NSIDC DAAC',
                     'associations': {'services': ['S1568899363-NSIDC_ECS',
                                                   'S1613689509-NSIDC_ECS',
                                                   'S1977894169-NSIDC_ECS',
                                                   'S2013515292-NSIDC_ECS',
                                                   'S2008499525-NSIDC_ECS'],
                                      'tools': ['TL1994100033-NSIDC_ECS',
                                                'TL2000645101-NSIDC_ECS',
                                                'TL1952642907-NSIDC_ECS',
                                                'TL1993837300-NSIDC_ECS',
                                                'TL2012682515-NSIDC_ECS',
                                                'TL1977912846-NSIDC_ECS',
                                                'TL1950215144-NSIDC_ECS',
                                                'TL2011654705-NSIDC_ECS',
                                                'TL1977971361-NSIDC_ECS',
                                                'TL2140660378-NSIDC_ECS',
                                                'TL1956087574-NSIDC_ECS']},
                     'boxes': ['-90 -180 90 180'],
                     'browse_flag': False,
                     'consortiums': ['GEOSS', 'EOSDIS'],
                     'coordinate_system': 'CARTESIAN',
                     'data_center': 'NSIDC_ECS',
                     'dataset_id': 'ATLAS/ICESat-2 L3A Land Ice Height V004',
                     'has_formats': True,
                     'has_spatial_subsetting': True,
                     'has_temporal_subsetting': True,
                     'has_transforms': False,
                     'has_variables': True,
                     'id': 'C2003771331-NSIDC_ECS',
                     'links': [{'href': 'https://n5eil01u.ecs.nsidc.org/ATLAS/ATL06.004/',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://search.earthdata.nasa.gov/search/granules?p=C2003771331-NSIDC_ECS&pg[0][gsk]=-start_date&q=atl06%20v004&tl=1602518008!4!!&m=-9.278314769606354!-105.46875!1!1!0!0%2C2',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://openaltimetry.org/',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://nsidc.org/data/data-access-tool/ATL06/versions/4/',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://doi.org/10.5067/ATLAS/ATL06.004',
                                'hreflang': 'en-US',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#'},
                               {'href': 'https://doi.org/10.5067/ATLAS/ATL06.004',
                                'hreflang': 'en-US',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'}],
                     'online_access_flag': True,
                     'orbit_parameters': {'inclination_angle': '92.0',
                                          'number_of_orbits': '0.071428571',
                                          'period': '96.8',
                                          'start_circular_latitude': '0.0',
                                          'swath_width': '36.0'},
                     'organizations': ['NASA NSIDC DAAC',
                                       'NASA/GSFC/EOS/ESDIS'],
                     'original_format': 'ISO19115',
                     'platforms': ['ICESat-2'],
                     'processing_level_id': 'Level 3',
                     'service_features': {'esi': {'has_formats': True,
                                                  'has_spatial_subsetting': True,
                                                  'has_temporal_subsetting': True,
                                                  'has_transforms': False,
                                                  'has_variables': True},
                                          'harmony': {'has_formats': False,
                                                      'has_spatial_subsetting': False,
                                                      'has_temporal_subsetting': False,
                                                      'has_transforms': False,
                                                      'has_variables': False},
                                          'opendap': {'has_formats': False,
                                                      'has_spatial_subsetting': False,
                                                      'has_temporal_subsetting': False,
                                                      'has_transforms': False,
                                                      'has_variables': False}},
                     'short_name': 'ATL06',
                     'summary': 'This data set (ATL06) provides geolocated, '
                                'land-ice surface heights (above the WGS 84 '
                                'ellipsoid, ITRF2014 reference frame), plus '
                                'ancillary parameters that can be used to '
                                'interpret and assess the quality of the '
                                'height estimates. The data were acquired by '
                                'the Advanced Topographic Laser Altimeter '
                                'System (ATLAS) instrument on board the Ice, '
                                'Cloud and land Elevation Satellite-2 '
                                '(ICESat-2) observatory.',
                     'time_end': '2021-07-15T23:59:59.999Z',
                     'time_start': '2018-10-14T00:00:00.000Z',
                     'title': 'ATLAS/ICESat-2 L3A Land Ice Height V004',
                     'version_id': '004'},
                    {'archive_center': 'NASA NSIDC DAAC',
                     'associations': {'services': ['S1977894169-NSIDC_ECS',
                                                   'S1568899363-NSIDC_ECS',
                                                   'S2013515292-NSIDC_ECS',
                                                   'S1613689509-NSIDC_ECS',
                                                   'S2008499525-NSIDC_ECS'],
                                      'tools': ['TL2000645101-NSIDC_ECS',
                                                'TL1950215144-NSIDC_ECS',
                                                'TL1977971361-NSIDC_ECS',
                                                'TL2012682515-NSIDC_ECS',
                                                'TL1993837300-NSIDC_ECS',
                                                'TL1977912846-NSIDC_ECS',
                                                'TL2140660378-NSIDC_ECS',
                                                'TL1956547654-NSIDC_ECS',
                                                'TL2011654705-NSIDC_ECS',
                                                'TL1956087574-NSIDC_ECS',
                                                'TL1952642907-NSIDC_ECS',
                                                'TL1994100033-NSIDC_ECS']},
                     'boxes': ['-90 -180 90 180'],
                     'browse_flag': False,
                     'consortiums': ['GEOSS', 'EOSDIS'],
                     'coordinate_system': 'CARTESIAN',
                     'data_center': 'NSIDC_ECS',
                     'dataset_id': 'ATLAS/ICESat-2 L3A Land Ice Height V005',
                     'has_formats': True,
                     'has_spatial_subsetting': True,
                     'has_temporal_subsetting': True,
                     'has_transforms': False,
                     'has_variables': True,
                     'id': 'C2144439155-NSIDC_ECS',
                     'links': [{'href': 'https://n5eil01u.ecs.nsidc.org/ATLAS/ATL06.005/',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://search.earthdata.nasa.gov/search/granules?p=C2144439155-NSIDC_ECS&pg[0][v]=f&pg[0][gsk]=-start_date&q=atl06%20v005&tl=1637620429.826!3!!&m=-12.374623815234187!-42.75!1!1!0!0%2C2',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://openaltimetry.org/',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://nsidc.org/data/data-access-tool/ATL06/versions/5/',
                                'hreflang': 'en-US',
                                'length': '0.0KB',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},
                               {'href': 'https://doi.org/10.5067/ATLAS/ATL06.005',
                                'hreflang': 'en-US',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#'},
                               {'href': 'https://doi.org/10.5067/ATLAS/ATL06.005',
                                'hreflang': 'en-US',
                                'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'}],
                     'online_access_flag': True,
                     'orbit_parameters': {'inclination_angle': '92.0',
                                          'number_of_orbits': '0.071428571',
                                          'period': '96.8',
                                          'start_circular_latitude': '0.0',
                                          'swath_width': '36.0'},
                     'organizations': ['NASA NSIDC DAAC',
                                       'NASA/GSFC/EOS/ESDIS'],
                     'original_format': 'ISO19115',
                     'platforms': ['ICESat-2'],
                     'processing_level_id': 'Level 3',
                     'service_features': {'esi': {'has_formats': True,
                                                  'has_spatial_subsetting': True,
                                                  'has_temporal_subsetting': True,
                                                  'has_transforms': False,
                                                  'has_variables': True},
                                          'harmony': {'has_formats': False,
                                                      'has_spatial_subsetting': False,
                                                      'has_temporal_subsetting': False,
                                                      'has_transforms': False,
                                                      'has_variables': False},
                                          'opendap': {'has_formats': False,
                                                      'has_spatial_subsetting': False,
                                                      'has_temporal_subsetting': False,
                                                      'has_transforms': False,
                                                      'has_variables': False}},
                     'short_name': 'ATL06',
                     'summary': 'This data set (ATL06) provides geolocated, '
                                'land-ice surface heights (above the WGS 84 '
                                'ellipsoid, ITRF2014 reference frame), plus '
                                'ancillary parameters that can be used to '
                                'interpret and assess the quality of the '
                                'height estimates. The data were acquired by '
                                'the Advanced Topographic Laser Altimeter '
                                'System (ATLAS) instrument on board the Ice, '
                                'Cloud and land Elevation Satellite-2 '
                                '(ICESat-2) observatory.',
                     'time_start': '2018-10-14T00:00:00.000Z',
                     'title': 'ATLAS/ICESat-2 L3A Land Ice Height V005',
                     'version_id': '005'}],
          'id': 'https://cmr.earthdata.nasa.gov:443/search/collections.json?short_name=ATL06',
          'title': 'ECHO dataset metadata',
          'updated': '2022-04-14T23:55:51.982Z'}}

Step 2: Querying a data product¶

In order to search the product collection for available data granules, we need to build our search parameters. This is done automatically behind the scenes when you run region_a.avail_granules(), but you can also build and view them by calling region_a.CMRparams. These are formatted as a dictionary of key:value pairs according to the CMR documentation and are analogous to the methods called with an earthdata.DataGranules() instance.

#build and view the parameters that will be submitted in our query
region_a.CMRparams
{'short_name': 'ATL06',
 'version': '005',
 'temporal': '2019-02-20T00:00:00Z,2019-02-28T23:59:59Z',
 'bounding_box': '-55.0,68.0,-48.0,71.0'}

Now that our parameter dictionary is constructed, we can search the CMR database for the available granules. Granules returned by the CMR metadata search are automatically stored within the data object. The search completed at this level relies completely on the granules’ metadata. As a result, some (and in rare cases all) of the granules returned may not actually contain data in your specified region, particularly if the region is small or located near the boundaries of a given granule. If this is the case, the subsetter will not return any data when you actually place the order. A warning message will be issued during ordering for each granule to which this applies (but no message is output for successfully subsetted granules, so don’t worry!)

#search for available granules and provide basic summary info about them
region_a.avail_granules()
{'Number of available granules': 4,
 'Average size of granules (MB)': 53.948360681525,
 'Total size of all granules (MB)': 215.7934427261}
#get a list of granule IDs for the available granules
region_a.avail_granules(ids=True)
[['ATL06_20190221121851_08410203_005_01.h5',
  'ATL06_20190222010344_08490205_005_01.h5',
  'ATL06_20190225121032_09020203_005_01.h5',
  'ATL06_20190226005526_09100205_005_01.h5']]
#print detailed information about the returned search results
region_a.granules.avail
[{'producer_granule_id': 'ATL06_20190221121851_08410203_005_01.h5',
  'time_start': '2019-02-21T12:19:05.196Z',
  'orbit': {'ascending_crossing': '-40.35812957405553',
   'start_lat': '59.5',
   'start_direction': 'A',
   'end_lat': '80',
   'end_direction': 'A'},
  'updated': '2021-11-22T19:32:23.788Z',
  'orbit_calculated_spatial_domains': [{'equator_crossing_date_time': '2019-02-21T12:03:18.922Z',
    'equator_crossing_longitude': '-40.35812957405553',
    'orbit_number': '2429'}],
  'dataset_id': 'ATLAS/ICESat-2 L3A Land Ice Height V005',
  'data_center': 'NSIDC_ECS',
  'title': 'SC:ATL06.005:228825416',
  'coordinate_system': 'ORBIT',
  'time_end': '2019-02-21T12:24:16.042Z',
  'id': 'G2159085058-NSIDC_ECS',
  'original_format': 'ISO-SMAP',
  'granule_size': '59.1940822601',
  'browse_flag': True,
  'polygons': [['58.62975669572381 -47.899339089543176 77.11313865341255 -55.06953885155483 77.78463055907766 -55.65948204030133 77.83817676951094 -54.146243325401755 77.16392707969413 -53.63221938455522 58.65148061829878 -47.27826638104229 58.62975669572381 -47.899339089543176']],
  'collection_concept_id': 'C2144439155-NSIDC_ECS',
  'online_access_flag': True,
  'links': [{'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'type': 'application/x-hdfeos',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.21/ATL06_20190221121851_08410203_005_01.h5'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.default.default1.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.default.default2.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt1r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt2r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190221121851_08410203_005_01_BRW.gt3r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'type': 'text/xml',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.21/ATL06_20190221121851_08410203_005_01.iso.xml'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/ATLAS/ATL06.005/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://search.earthdata.nasa.gov/search/granules?p=C2144439155-NSIDC_ECS&pg[0][v]=f&pg[0][gsk]=-start_date&q=atl06%20v005&tl=1637620429.826!3!!&m=-12.374623815234187!-42.75!1!1!0!0%2C2'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://openaltimetry.org/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://nsidc.org/data/data-access-tool/ATL06/versions/5/'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'}]},
 {'producer_granule_id': 'ATL06_20190222010344_08490205_005_01.h5',
  'time_start': '2019-02-22T01:03:44.199Z',
  'orbit': {'ascending_crossing': '130.68730694092687',
   'start_lat': '80',
   'start_direction': 'D',
   'end_lat': '59.5',
   'end_direction': 'D'},
  'updated': '2021-11-22T19:32:56.720Z',
  'orbit_calculated_spatial_domains': [{'equator_crossing_date_time': '2019-02-22T00:37:38.252Z',
    'equator_crossing_longitude': '130.68730694092687',
    'orbit_number': '2437'}],
  'dataset_id': 'ATLAS/ICESat-2 L3A Land Ice Height V005',
  'data_center': 'NSIDC_ECS',
  'title': 'SC:ATL06.005:228826463',
  'coordinate_system': 'ORBIT',
  'time_end': '2019-02-22T01:07:38.112Z',
  'id': 'G2159087592-NSIDC_ECS',
  'original_format': 'ISO-SMAP',
  'granule_size': '49.8894329071',
  'browse_flag': True,
  'polygons': [['82.61181287249774 -38.90149525182057 68.32574777615947 -51.33111555413964 68.35637853750352 -52.20487655612774 82.70025538260262 -41.33964770515323 82.61181287249774 -38.90149525182057']],
  'collection_concept_id': 'C2144439155-NSIDC_ECS',
  'online_access_flag': True,
  'links': [{'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'type': 'application/x-hdfeos',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.22/ATL06_20190222010344_08490205_005_01.h5'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.default.default1.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.default.default2.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt1r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt2r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190222010344_08490205_005_01_BRW.gt3r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'type': 'text/xml',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.22/ATL06_20190222010344_08490205_005_01.iso.xml'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/ATLAS/ATL06.005/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://search.earthdata.nasa.gov/search/granules?p=C2144439155-NSIDC_ECS&pg[0][v]=f&pg[0][gsk]=-start_date&q=atl06%20v005&tl=1637620429.826!3!!&m=-12.374623815234187!-42.75!1!1!0!0%2C2'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://openaltimetry.org/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://nsidc.org/data/data-access-tool/ATL06/versions/5/'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'}]},
 {'producer_granule_id': 'ATL06_20190225121032_09020203_005_01.h5',
  'time_start': '2019-02-25T12:10:49.539Z',
  'orbit': {'ascending_crossing': '-41.13680873799747',
   'start_lat': '59.5',
   'start_direction': 'A',
   'end_lat': '80',
   'end_direction': 'A'},
  'updated': '2021-11-22T19:40:29.824Z',
  'orbit_calculated_spatial_domains': [{'equator_crossing_date_time': '2019-02-25T11:55:00.907Z',
    'equator_crossing_longitude': '-41.13680873799747',
    'orbit_number': '2490'}],
  'dataset_id': 'ATLAS/ICESat-2 L3A Land Ice Height V005',
  'data_center': 'NSIDC_ECS',
  'title': 'SC:ATL06.005:228832985',
  'coordinate_system': 'ORBIT',
  'time_end': '2019-02-25T12:15:58.020Z',
  'id': 'G2159104277-NSIDC_ECS',
  'original_format': 'ISO-SMAP',
  'granule_size': '61.1295795441',
  'browse_flag': True,
  'polygons': [['58.75340311462258 -48.70348227565369 77.23530848461792 -55.95128240927136 77.78463055907766 -56.438161204243286 77.83817676951094 -54.92492248934371 77.28657675284526 -54.50072966263222 58.77520431173075 -48.08021035063036 58.75340311462258 -48.70348227565369']],
  'collection_concept_id': 'C2144439155-NSIDC_ECS',
  'online_access_flag': True,
  'links': [{'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'type': 'application/x-hdfeos',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.25/ATL06_20190225121032_09020203_005_01.h5'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.default.default1.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.default.default2.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt1r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt2r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190225121032_09020203_005_01_BRW.gt3r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'type': 'text/xml',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.25/ATL06_20190225121032_09020203_005_01.iso.xml'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/ATLAS/ATL06.005/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://search.earthdata.nasa.gov/search/granules?p=C2144439155-NSIDC_ECS&pg[0][v]=f&pg[0][gsk]=-start_date&q=atl06%20v005&tl=1637620429.826!3!!&m=-12.374623815234187!-42.75!1!1!0!0%2C2'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://openaltimetry.org/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://nsidc.org/data/data-access-tool/ATL06/versions/5/'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'}]},
 {'producer_granule_id': 'ATL06_20190226005526_09100205_005_01.h5',
  'time_start': '2019-02-26T00:55:25.977Z',
  'orbit': {'ascending_crossing': '129.90866624462055',
   'start_lat': '80',
   'start_direction': 'D',
   'end_lat': '59.5',
   'end_direction': 'D'},
  'updated': '2021-11-22T19:32:56.140Z',
  'orbit_calculated_spatial_domains': [{'equator_crossing_date_time': '2019-02-26T00:29:20.033Z',
    'equator_crossing_longitude': '129.90866624462055',
    'orbit_number': '2498'}],
  'dataset_id': 'ATLAS/ICESat-2 L3A Land Ice Height V005',
  'data_center': 'NSIDC_ECS',
  'title': 'SC:ATL06.005:228826440',
  'coordinate_system': 'ORBIT',
  'time_end': '2019-02-26T00:59:21.044Z',
  'id': 'G2159087678-NSIDC_ECS',
  'original_format': 'ISO-SMAP',
  'granule_size': '45.5803480148',
  'browse_flag': True,
  'polygons': [['82.67104954757697 -39.5335043271747 68.26408446561075 -52.130929068761965 68.29463240133403 -53.00234860106772 82.76021169246623 -41.98988165890471 82.67104954757697 -39.5335043271747']],
  'collection_concept_id': 'C2144439155-NSIDC_ECS',
  'online_access_flag': True,
  'links': [{'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'type': 'application/x-hdfeos',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.26/ATL06_20190226005526_09100205_005_01.h5'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.default.default1.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.default.default2.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt1r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt2r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3l.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3l.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3l.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3l.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3l.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3r.atl06_quality_summary.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3r.h_li.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3r.h_li_sigma.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3r.n_fit_photons.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/browse#',
    'type': 'image/jpeg',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP0/BRWS/Browse.001/2021.11.05/ATL06_20190226005526_09100205_005_01_BRW.gt3r.signal_selection_source.jpg'},
   {'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'type': 'text/xml',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/DP7/ATLAS/ATL06.005/2019.02.26/ATL06_20190226005526_09100205_005_01.iso.xml'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://n5eil01u.ecs.nsidc.org/ATLAS/ATL06.005/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://search.earthdata.nasa.gov/search/granules?p=C2144439155-NSIDC_ECS&pg[0][v]=f&pg[0][gsk]=-start_date&q=atl06%20v005&tl=1637620429.826!3!!&m=-12.374623815234187!-42.75!1!1!0!0%2C2'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://openaltimetry.org/'},
   {'inherited': True,
    'length': '0.0KB',
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',
    'hreflang': 'en-US',
    'href': 'https://nsidc.org/data/data-access-tool/ATL06/versions/5/'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'},
   {'inherited': True,
    'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#',
    'hreflang': 'en-US',
    'href': 'https://doi.org/10.5067/ATLAS/ATL06.005'}]}]

Step 3: Log in to NASA Earthdata¶

In order to download any data from NSIDC, we must first authenticate ourselves using a valid Earthdata login. This will create a valid token to interface with the DAAC as well as start an active logged-in session to enable data download. Once you have successfully logged in for a given query instance, the token and session will be passed behind the scenes as needed for you to order and download data. Passwords are entered but not shown or stored in plain text by the system.

There are multiple ways to provide your Earthdata credentials via icepyx. The in-notebook login is used below, and other methods (via a saved environment variable (hub-appropriate) or .netrc file (recommended for local use only)) will soon be detailed in the documentation.

earthdata_uid = 'uwhackweek'
email = 'hackweekadmin@gmail.com'
region_a.earthdata_login(earthdata_uid, email)

Step 4: Additional Parameters and Subsetting¶

Once we have generated our session, we must build the required configuration parameters needed to actually download data. These will tell the system how we want to download the data. As with the CMR search parameters, these will be built automatically when you run region_a.order_granules(), but you can also create, view, and manually update them with region_a.reqparams.

Don’t we already have our granules picked out?¶

Technically, yes. By searching CMR, we used metadata to quickly determine which granules likely contain information we’d like. But to find your favorite quote in your favorite book, you actually have to open the book. CMR just helped us figure out where in the library it was and get it off the shelf. Subsetting allows us to just check out and use that quote instead of the whole book.

Filter-vs-subset maps with code for each step in earthdata and icepyx

Fig. 2 Illustration of the steps and code (in icepyx and earthdata) required to filter data in CMR using spatial bounds, followed by the pre-processing step of subsetting offered as a service by NSIDC.¶

Subsetting¶

In addition to the required parameters (CMRparams and reqparams) that are submitted with our order, for ICESat-2 data products we can also submit subsetting parameters to NSIDC. For a deeper dive into subsetting and the reformatting options (e.g. file format conversion) options offered by NSIDC, please see our Subsetting Tutorial Notebook, which covers subsetting in more detail, including how to get a list of subsetting options, how to build your list of subsetting parameters, and how to generate a list of desired variables (most datasets have more than 200 variable fields!), including using pre-built default lists (these lists are still in progress and we welcome contributions!).

Subsetting utilizes the NSIDC’s built in subsetter to extract only the data you are interested (spatially, temporally, variables of interest, etc.). The advantages of using the NSIDC’s subsetter include:

  • easily reproducible downloads, particularly when coupled with an icepyx query object

  • smaller file size, meaning faster downloads, less storage required, and no need to subset the data on your own

  • still easy to go back and order more data/variables with the same or similar search parameters

  • no extraneous data means you can move directly to analysis and easily navigate your dataset

Certain subset parameters are specified by default unless subset=False is included as an input to order_granules() or download_granules() (which calls order_granules() under the hood).

As for the CMR and required parameters, default subset parameters can be built and viewed using subsetparams. Where an input spatial file is used, rather than a bounding box or manually entered polygon, the spatial file will be used for subsetting (unless subset is set to False) but not show up in the subsetparams dictionary.

region_a.subsetparams()
{'time': '2019-02-20T00:00:00,2019-02-28T23:59:59',
 'bbox': '-55.0,68.0,-48.0,71.0'}

Step 5: Place the order¶

Then, we can send the order to NSIDC using the order_granules function. Information about the granules ordered and their status will be printed automatically. Status information can also be emailed to the address provided when the email kwarg is set to True. Additional information on the order, including request URLs, can be viewed by setting the optional keyword input ‘verbose’ to True.

region_a.order_granules()
Total number of data order requests is  1  for  4  granules.
Data request  1  of  1  is submitting to NSIDC
order ID:  5000003039952
Initial status of your order request at NSIDC is:  processing
Your order status is still  processing  at NSIDC. Please continue waiting... this may take a few moments.
Your order is: complete
#view a short list of order IDs
region_a.granules.orderIDs
['5000003039952']

Step 6: Download the order¶

Finally, we can download our order to a specified directory (which needs to have a full path but doesn’t have to point to an existing directory) and the download status will be printed as the program runs. Additional information is again available by using the optional boolean keyword verbose.

path = '/tmp/dataaccess/'
region_a.download_granules(path)

Quick-Start Guide¶

The entire process of getting ICESat-2 data (from query to download) can ultimately be accomplished in three minimal lines of code:

reg_a = ipx.Query(short_name, spatial_extent, date_range)

reg_a.earthdata_login(earthdata_uid, email)

reg_a.download_granules(path)

where the function inputs are as described above. The steps detailed in this tutorial are meant to give the user full control over the data they find and download while providing a higher-level interface and realistic defaults suitable for most use cases.


Quick-Start Guide (Cloud Data Access)¶

If you want to access ICESat-2 data in the cloud with icepyx, you need to turn on a few flags and activate your credentials for cloud access:

import s3fs
import h5py

reg_a = ipx.Query(short_name, spatial_extent, date_range)
gran_ids = reg_a.avail_granules(ids=True, s3urls=True)


reg_a.earthdata_login(earthdata_uid, email, s3token=True)
credentials = reg_a._s3login_credentials

s3 = s3fs.S3FileSystem(key=credentials['accessKeyId'],
                       secret=credentials['secretAccessKey'],
                       token=credentials['sessionToken'])

# select a granule to read
s3url = gran_ids[1][0]

f = h5py.File(s3.open(s3url,'rb'),'r')

where the function inputs are as described above. A full tutorial on cloud data access via icepyx is here.


Other Resources¶

Links to more detailed examples using icepyx:

ICESat-2 Resources Guide

  • 2019 and 2020 ICESat-2 Hackweek materials (tutorials and projects)

  • packages shared with the community for working with ICESat-2 data

  • NSIDC resources

  • see something missing? Please let us know (or submit a PR to add it!)

Credits

  • based on the icepyx ICESat-2 Data Access Notebook and source materials therein.

  • notebook contributors (this tutorial): Mikala Beig, Jessica Scheick

  • additional contributors (source materials): Amy Steiker, Tyler Sutterley, Bruce Wallin