diff --git a/.gitignore b/.gitignore
index bdc368c..63de216 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@ example_data/
*.h5
*.nc
_freeze
+.venv/
diff --git a/_quarto.yml b/_quarto.yml
index 170c787..90ca188 100644
--- a/_quarto.yml
+++ b/_quarto.yml
@@ -27,8 +27,8 @@ website:
href: index.qmd
- section: "Getting Started"
contents:
- - text: "How to use this cookbook"
- href: our-cookbook.qmd
+ - text: "Getting an Earthdata Login"
+ href: reference-guides/get-edl.qmd
- text: "Tools we use"
href: tools-we-use.qmd
# - text: "Quick Start Guide"
@@ -36,51 +36,56 @@ website:
- section: "NSIDC Data"
# href: reference-guides/data-orient-overview.qmd
contents:
- - text: "Types of data"
+ - text: "Data types and formats"
href: reference-guides/data-structures.qmd
- - text: "Common file formats"
- href: reference-guides/nsidc-file-formats.qmd
- text: "NASA collections and granules"
- text: "NSIDC map projections and grids"
href: reference-guides/projections.qmd
- - text: "Quirky Datasets"
+ - text: "Quirky datasets"
href: reference-guides/datasets.qmd
- section: "Working with Data"
# href: reference-guides/working-with-data-overview.qmd
contents:
- - section: "Finding and Accessing Data"
+ - section: "Finding / accessing data"
contents:
- - text: "Getting an Earthdata Login"
- # href: reference-guides/get-edl.qmd
- text: "Data search and discovery"
href: reference-guides/dataset-search-and-discovery.qmd
- text: "Data access"
- - section: "Wrangling Data"
+ href: reference-guides/data-access.qmd
+ - section: "Wrangling data"
contents:
- text: "Subsetting"
- text: "Reformatting"
- text: "Reprojecting"
- text: "Resampling"
- - section: "Visualizing Data"
+ - section: "Visualizing data"
contents:
- text: "Plotting data - time series, scatter plots"
- text: "Plotting data on a map"
href: reference-guides/plotting-data.qmd
- - text: "Best Practices"
- - section: "How do I..."
+ - section: "How-To Guides"
href: how-to-guides/overview.qmd
contents:
- section: "Search for data"
- section: "Access data"
- section: "Reproject data"
- - section: "Work with NetCDF files?"
+ - section: "Work with NetCDF files"
contents:
- - text: "get the bounding box of a netcdf file"
+ - text: "Get the bounding box of a NetCDF file"
href: how-to-guides/netcdf_cf.qmd
- - text: "get the latitude and longitudes for grid cells"
+ - text: "Get the latitude and longitudes for grid cells"
href: how-to-guides/get_latitude_and_longitude.qmd
+ - section: "Tutorials / Workshops"
+ href: tutorials/tutorials_overview.qmd
+ contents:
+ - text: "Direct cloud access of ICESat-2 data"
+ href: tutorials/ATL06-direct-access.ipynb
+ - text: "Download ICESat-2 Sea Ice data"
+ href: tutorials/working_with_icesat2_sea_ice_data.ipynb
- section: "Appendices"
contents:
+ - text: "Contributing"
+ - text: "Best Practices"
- text: "What is an API?"
format:
diff --git a/how-to-guides/netcdf_cf.qmd b/how-to-guides/netcdf_cf.qmd
index 7434072..30d3ce3 100644
--- a/how-to-guides/netcdf_cf.qmd
+++ b/how-to-guides/netcdf_cf.qmd
@@ -1,5 +1,5 @@
---
-title: "How do I get the bounding box of a NetCDF file in latitude and longitude?"
+title: "How to get the bounding box of a NetCDF file in latitude and longitude"
author: Andrew P. Barrett
date: last-modified
---
diff --git a/how-to-guides/overview.qmd b/how-to-guides/overview.qmd
index 3f2d64d..c1331e5 100644
--- a/how-to-guides/overview.qmd
+++ b/how-to-guides/overview.qmd
@@ -1,27 +1,23 @@
---
title: "How-To Guides"
-author: Andy P. Barrett
---
## Introduction
-This section of the cookbook contains **How To Guides** to help you
+This section of the cookbook contains **How-To Guides** to help you
solve a particular problem or task. You can think of these How-To
-Guides as recipes. For the most part they are short. They are
+Guides as programmatic recipes. For the most part they are short. They are
written with the assumption that you know what you want to do and have
-some understanding of programing. You can think of each How-To as a
+some understanding of programming. You can think of each How-To as a
building block that can be put together with other How-Tos to construct
a workflow.
-If you are just learning either programming or working in the cloud,
-we recommend looking at the other chapters in this cookbook.
-
How-To Guides are organized into the following sections:
-_Maybe add a short description of each section here_
-- How do I search for data;
-- How do I accessing data;
-- How do I reproject and resample data;
-- How do I work with CF-compliant NetCDF files
- - [How do I get the bounding box of a NetCDF file in latitude and longitude?](netcdf_cf.qmd)
+- How to search for data (via `earthaccess`);
+- How to access data (via `earthaccess`);
+- How to reproject and resample data;
+- How to work with CF-compliant NetCDF files:
+ - [How to get the bounding box of a NetCDF file in latitude and longitude](netcdf_cf.qmd)
+ - [How to get latitude and longitude for the grid cells of a NetCDF file](get_latitude_and_longitude.qmd)
diff --git a/index.qmd b/index.qmd
index b7630d0..d93e607 100644
--- a/index.qmd
+++ b/index.qmd
@@ -3,14 +3,35 @@ title: "NSIDC Data Cookbook"
author: NSIDC
---
-## Welcome
-
-Welcome to the NSIDC Data Cookbook!
-
> [!WARNING]
> This cookbook is under active development. Major changes to the structure of
> the book and its content are expected. We are striving to develop content
> that is well-tested and peer-reviewed, but nothing contained here should be
> expected to work correctly (or at all!) in this early phase. Many sections contain only an outline of the content.
-> These sections will have content added at the project develops.
+> These sections will have content added as the project develops.
+
+## Welcome to the NSIDC Data Cookbook!
+
+This Cookbook for National Snow and Ice Data Center Distributed Active Archive Center ([NSIDC DAAC](https://nsidc.org/data/data-programs/nsidc-daac)) Data is more Julia Child’s “Mastering the Art of French Cooking” than just a collection of recipes (or data tutorials). The aim is to not only provide easy to follow recipes for working with data but also to provide an understanding of the data managed by NSIDC and the tools available to work with the data. It is not an in-depth guide to the many datasets housed by NSIDC but instead is an introduction to the common types of data, file formats and data structures. The hope is that the cookbook will provide a guide and foundataion to help you *master the art of working with cryospheric data*.
+
+## How to use this cookbook
+
+If you are new to NASA or NSIDC data, begin with the **Getting Started** section. Beyond that, the cookbook is divided into four major sections: **NSIDC Data**, **Working with Data**, **How-To Guides**, and **Tutorials / Workshops**. We also include some **Appendices** that include a best practices guide for Python scripting, some background details on computing, and how to contribute to the cookbook (if you are so inclined!).
+
+The **NSIDC Data** section is an introduction to the types of data managed by NSIDC, the file formats used to store that data, coordinate reference systems and grids comon to NSIDC data, and a guide to NASA terminology for Earth science data. There is also an introduction to some “quirky” datasets that do not fit more common simple data structures or are just a little more difficult to work with.
+
+The **Working with Data** section is a guide to the tools and applications for accomplishing common steps in scientific workflows: finding and accessing data, wrangling data, and visualizing data. Wrangling data covers subsetting, reformatting, reprojecting and resampling data in preparation for analysis.
+
+The **How-To Guides** section is a list of recipes to acheive common tasks. It is intended a list of solutions to common scientific programming tasks.
+
+Lastly, the **Tutorials / Workshops** section serves to highlight content that was developed for past events or specific use cases.
+
+## About the NSIDC DAAC
+
+NSIDC has managed the NASA National Snow and Ice Data Center Distributed Active Archive Center (NSIDC DAAC) since 1993, archiving and distributing cryospheric and related geophysical data from NASA Earth-observing satellite missions, airborne campaigns and field observations. The NSIDC DAAC provides hundreds of free and open-access NASA Earth science data sets, detailed data documentation, data tools, resources and tutorials, as well as robust data user support services. These data can be used to study topics relating to snow cover, sea ice, ice sheets, ice shelves, glaciers, frozen ground, soil moisture, climate interactions, and more!
+
+
+
+
+
diff --git a/reference-guides/data-access.qmd b/reference-guides/data-access.qmd
new file mode 100644
index 0000000..da50645
--- /dev/null
+++ b/reference-guides/data-access.qmd
@@ -0,0 +1,45 @@
+---
+title: "Data access"
+---
+
+#### **Prerequisite reminder**
+
+A [NASA Earthdata Login](https://urs.earthdata.nasa.gov/) is required for all data access methods, including download and direct cloud access.
+
+#### **NASA Earthdata Cloud**
+
+The NASA Earthdata Cloud is NASA’s cloud-based archive of Earth observation data. It is hosted by Amazon Web Services (AWS) in region us-west-2. Downloading data from the Earthdata Cloud to your local computer or storage system is and will continue to be free for users. You don't need an AWS account to download data. Alternatively, you can work directly with NSIDC DAAC holdings stored in Amazon S3 (the object storage service used by NASA Earthdata Cloud). This direct access method allows you stream data into memory and analyze it "in place", avoiding large transfers to your local computer.
+
+Options for accessing NASA Earthdata are outlined below:
+
+#### **Option 1: Browser-Based Download (No Coding Required)**
+
+If you prefer a graphical interface, use one of these web-based tools:
+
+[NASA Earthdata Search](https://search.earthdata.nasa.gov) - Explore, filter and customize data before downloading files. Instructions for using Earthdata Search to find and access data can be found in our Earthdata Search [guide](https://nsidc.org/data/user-resources/help-center/search-order-and-customize-nsidc-daac-data-nasa-earthdata-search).
+
+image
+
+Data Access Tool - The NSIDC Data Access Tool can be accessed from a data set's landing page.
+Example: [ATLAS/ICESat-2 L2A Global Geolocated Photon Data. (ATL03, Version 7) Landing Page](https://nsidc.org/data/atl03/versions/7). In the right-hand menu on a data set landing page, click "Data Access & Tools". You will be directed to the top of a list of tool and service "cards" with links to various data access methods. Click on the card title "Data Access Tool" to be directed to the Data Access Tool interface for that particular data set. The Data Access Tool allows users to filter files within a data set using spatial bounds, temporal ranges, and filename wildcards.
+
+Help article on using the Data Access Tool: [https://nsidc.org/data/user-resources/help-center/filter-and-order-data-set-web-page-using-data-access-tool](https://nsidc.org/data/user-resources/help-center/filter-and-order-data-set-web-page-using-data-access-tool)
+
+#### **Option 2: Python (earthaccess Library)**
+
+The earthaccess Python library provides a streamlined way to search, authenticate, and download NASA Earthdata. It works both locally and in the cloud (e.g., on EC2 or JupyterHub environments).
+
+earthaccess [documentation](https://earthaccess.readthedocs.io/en/stable/)
+
+*Have reference/link to one of our "how do I's" here?*
+
+#### **Option 3: Command Line Tools (```wget```, ```curl```, PODAAC subscriber)**
+
+If you're comfortable using the terminal, command-line tools allow flexible and efficient downloading.
+
+```wget``` or ```curl``` – Download known files or batch download from an HTTPS URL list.
+Learn to create .txt files of download links here: [Creating Text Files of HTTPS and S3 URLs for Earthdata Cloud Data Access](https://nsidc.org/data/user-resources/help-center/creating-text-files-https-and-s3-urls-earthdata-cloud-data-access)
+
+[PODAAC Data Subscriber](https://github.com/podaac/data-subscriber/blob/main/README.md) – A Python-based command-line tool that supports spatial and temporal filtering. Though designed for PODAAC, it can be adapted for NSIDC and other DAACs.
+
+All of these command line options are detailed in this help article: [Downloading Data from Earthdata Cloud to Your Local Computer Using the Command Line](https://nsidc.org/data/user-resources/help-center/downloading-data-earthdata-cloud-your-local-computer-using-command-line)
\ No newline at end of file
diff --git a/reference-guides/data-structures.qmd b/reference-guides/data-structures.qmd
index c91a951..3559fb4 100644
--- a/reference-guides/data-structures.qmd
+++ b/reference-guides/data-structures.qmd
@@ -1,12 +1,23 @@
---
-title: "Data Structures"
+title: "Data types and formats"
---
-Describes common remote sensing data structures.
+There are many common data types/ structures and terminology to go along with them. Some examples:
-_We should add information for tabular data and Data Frames_
+- **Tabular** – rows and columns, often stored in CSV or TSV files. Each row is an observation, and each column is a variable (e.g., time, latitude, longitude, temperature).
+- **Data Frames** – tabular data structures used in programming languages like R or Python (pandas). Data frames allow for more complex indexing, metadata, and transformations than simple tabular files.
+- **Swath** – along-track measurements collected as the satellite passes over an area, usually irregular in shape and resolution.
+- **Raster / Grids** – data organized into regular grid cells, each cell representing a spatial unit (e.g., 25 km × 25 km grid of snow cover).
+- **Resampling** – methods for transforming data between swath, raster, or other structures (e.g., nearest neighbor, bilinear interpolation).
-- Swath
-- Along-track
-- Raster/Grids
-- Resampling
\ No newline at end of file
+
+How to work with file formats commonly found at NSIDC: In most cases, it’s best to avoid low-level libraries such as `netCDF4` or `h5py`. Higher-level libraries provide more intuitive access, automatically handle metadata, and streamline analysis. Some format descriptions and reccomendations are in the table below.
+
+| File Format | Description | Recommended Tools |
+| --------------------- | ------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
+| **NetCDF4 / NetCDFx** | Multidimensional climate/remote sensing data (time, lat, lon, variables). | `xarray` (`xr.open_dataset`) in Python; `terra` or `ncdf4` in R. |
+| **HDF5** | Hierarchical format for storing arrays, tables, and metadata; used widely in NASA products. | `xarray`, `pandas`; avoid `h5py` unless necessary. |
+| **HDF-EOS** | Earth Observing System variant of HDF, often with swath, grid, or point structures. | `xarray`, `h5netcdf`, NASA `harmony-py`. |
+| **Shapefile** | Vector geospatial data (points, lines, polygons) with CRS support. | `geopandas` (Python); `sf` (R). |
+| **GeoTIFF** | Georeferenced raster imagery and gridded data. | `rasterio`, `rioxarray` (Python); `terra`, `raster` (R). |
+| **CSV/TSV** | Tabular text-based files, rows = observations, columns = variables. | `pandas` (Python); `readr`/`data.table`/`tibble` (R). |
diff --git a/reference-guides/dataset-search-and-discovery.qmd b/reference-guides/dataset-search-and-discovery.qmd
index f68c605..4a32843 100644
--- a/reference-guides/dataset-search-and-discovery.qmd
+++ b/reference-guides/dataset-search-and-discovery.qmd
@@ -2,8 +2,45 @@
title: "Dataset Search and Discovery"
---
-- Getting an EDL
-- A simple earthaccess search and download
-- EDS
-- curl
-- wget
\ No newline at end of file
+### **NASA Common Metadata Repository**
+
+There are a variety of search and discovery methods allowing users to find NASA Earthdata from a graphical user interface (GUI) or using programmatic access methods, depending on preference. Any search and discovery method leverages the [NASA Common Metadata Repository](https://www.earthdata.nasa.gov/about/esdis/eosdis/cmr) to find data of interest.
+
+*NASA's Common Metadata Repository (CMR) is a high-performance, high-quality, continuously evolving metadata system that catalogs all data and service metadata records for NASA's Earth Observing System Data and Information System (EOSDIS) and will be the authoritative management system for all EOSDIS metadata. These metadata records are registered, modified, discovered, and accessed through programmatic interfaces leveraging standard protocols and APIs.*
+
+*CMR is the keystone that makes NASA's Earth observation data discoverable. As a metadata repository, CMR contains Unified Metadata Model (UMM) schema records that describe individual Earth data files (UMM-Granules), collections of files (UMM-Collections), scientific details about the data files (UMM-Variables), related tools and services that act on the data files (UMM-Tools and -Services), and pertinent relationships between these concepts. Using the UMM allows CMR to host its metadata records in several supported native formats, with translation services available between formats.*
+
+### **Search and Discovery Methods**
+
+
+#### **Graphical User Interfaces**
+
+
+##### **NASA Earthdata Search**
+
+All of NASA Earthdata are available through [NASA Earthdata Search](https://search.earthdata.nasa.gov), not just data archived through the NSIDC DAAC. [Help article](https://nsidc.org/data/user-resources/help-center/search-order-and-customize-nsidc-daac-data-nasa-earthdata-search) for using Earthdata Search.
+
+##### **NSIDC Data Access Tool**
+
+The NSIDC Data Access Tool is accessible from landing pages on the NSIDC website, and is an easy way to filter for files of interest without leaving nsidc.org. [Help article](https://nsidc.org/data/data-access-tool) for the NSIDC Data Access Tool.
+
+#### **Programmatic**
+
+The majority of the shorter form "How-To Guides" and longer form "Tutorials / Workshops" will present programmatic data access methods using Python. We hope to expand to other languages, such as R, in the future.
+
+**earthaccess Python library**
+
+`earthaccess` is a Python library to **search for** and **download** or **stream** NASA Earth science data with just a few lines of code.
+
+>*"earthaccess revolutionizes NASA data access by drastically reducing the complexity and code required. Since open science is a collaborative effort involving people from different technical backgrounds, our team took the approach that data analysis can and should be made more inclusive and accessible by reducing the complexities of underlying systems."*
+>
+>Luis López, an NSIDC software developer and earthaccess creator
+
+Instructions for searching for data using earthaccess [here](https://earthaccess.readthedocs.io/en/stable/user_guide/search/).
+
+
+
+
+
+
+
diff --git a/reference-guides/get-edl.qmd b/reference-guides/get-edl.qmd
new file mode 100644
index 0000000..6d2b520
--- /dev/null
+++ b/reference-guides/get-edl.qmd
@@ -0,0 +1,9 @@
+---
+title: "NASA Earthdata Login"
+---
+
+NASA Earthdata are freely accessible to all users, but a NASA Earthdata Login is required for access. Users can register for an Earthdata Login at [https://urs.earthdata.nasa.gov/](https://urs.earthdata.nasa.gov/).
+
+
+Some programmatic data access methods are simplified by setting up your Earthdata Login credentials in a netrc file for easy authentication.
+Instructions for creating a netrc file can be found [here](https://nsidc.org/data/user-resources/help-center/creating-netrc-file-earthdata-login).
diff --git a/tools-we-use.qmd b/tools-we-use.qmd
index 071b6c4..17cf8ef 100644
--- a/tools-we-use.qmd
+++ b/tools-we-use.qmd
@@ -3,7 +3,7 @@ title: "Tools we use"
#number-sections: true
---
-Currently, this cookbook features Python Packages (@sec-pythonpkg) for working with data supported by NSIDC DAAC. It also features some applications (@sec-applications) that are accessible through a web browser or as stand alone packages that need to be installed on your local machine.
+Currently, this cookbook features [Python Packages](#sec-pythonpkg) for working with data supported by NSIDC DAAC. It also features some [applications](#sec-applications) that are accessible through a web browser or as stand alone packages that need to be installed on your local machine.
The focus on Python not only reflects the expertise of NSIDC DAAC but also reflects the popularity of Python within the Earth and atmospheric science communities. However, we recognize that many of our users are more familiar with other programming langauges such as R and Matlab. We hope that we will be able to include these langauges as the Cookbook develops.
@@ -14,53 +14,86 @@ Using web or locally-installed applications is a good way to start to discover a
There are many Python packages available for working with Earth science data. The packages we use in this Cookbook are an unashamedly opinionated selection; they are the tools we like to use. We also think that these tools are the easiest to use for the types of data mananaged by NSIDC DAAC. Most of the tools have been developed so that researchers do not have to worry about the low-level details of accessing and working with often complicated data used in Earth science. This reduces the amount of code you have to write and also reduces the number of mistakes you will inevitably make.
#### earthaccess
-[`earthaccess`](https://earthaccess.readthedocs.io/en/latest/) is a package to search for and access NASA Earth science data.
+
+[`earthaccess`](https://earthaccess.readthedocs.io/en/latest/) — search for and access NASA Earth science data.
#### xarray
-[`xarray`](https://xarray.dev/) is a package to work with N-dimensional data (e.g `(time,x,y,z)`).
+
+[`xarray`](https://xarray.dev/) — work with N-dimensional labeled data (e.g. `(time, x, y, z)`).
#### rioxarray
-[`rioxarray`](https://corteva.github.io/rioxarray/stable/index.html) is an extentsion to `xarray` that makes data "geospatially-aware".
+
+[`rioxarray`](https://corteva.github.io/rioxarray/stable/index.html) — add geospatial awareness to `xarray`.
#### rasterio
-[`rasterio`](https://rasterio.readthedocs.io/en/stable/intro.html) is a Python geospatial library for working with raster data.
-#### Pandas
-[`pandas`](https://pandas.pydata.org/docs/index.html) is a package to work with tabular data (e.g. the kind of data stored in spreadsheets or databases).
+[`rasterio`](https://rasterio.readthedocs.io/en/stable/intro.html) — read, write, and process raster datasets.
+
+#### pandas
+
+[`pandas`](https://pandas.pydata.org/docs/index.html) — handle tabular data (spreadsheets, databases, CSV).
+
+#### geopandas
-#### Geopandas
-[`geopandas`](https://geopandas.org/en/stable/) is an extension to `pandas` to work with geospatial data.
+[`geopandas`](https://geopandas.org/en/stable/) — extend `pandas` to work with geospatial vector data.
#### cartopy
-TBD
+
+[`cartopy`](https://scitools.org.uk/cartopy/docs/latest/) — map projections, transformations, and plotting for geospatial data.
#### SlideRule
-TBD
+
+[`SlideRule`](https://github.com/ICESat2-SlideRule/sliderule-python) — on-demand processing and access to ICESat-2 data.
#### icepyx
-TBD
+
+[`icepyx`](https://icepyx.readthedocs.io/en/latest/) — search, subset, and download ICESat-2 data with built-in metadata handling.
#### satpy
-TBD
+
+[`satpy`](https://satpy.readthedocs.io/en/stable/) — read, composite, and visualize meteorological satellite data.
#### dask
-TBD
-## Installing Python Packages
+[`dask`](https://www.dask.org/) — scale computations from laptops to clusters with parallel, out-of-core workflows.
+
+### Installing Python Packages
+
+Most Python packages can be installed from the [Python Package Index (PyPI)](https://pypi.org/) using [pip](https://pip.pypa.io/en/stable/). Some scientific and geospatial packages are easier to install with [conda](https://docs.conda.io/), particularly through the [conda-forge community channel](https://conda-forge.org/).
+For more details, see the [official Python documentation on installing packages](https://docs.python.org/3/installing/index.html), the [pip documentation](https://pip.pypa.io/en/stable/getting-started/), and the [conda user guide](https://docs.conda.io/projects/conda/en/latest/user-guide/index.html).
## Applications {#sec-applications}
+Applications provide graphical interfaces for exploring, visualizing, and working with Earth science data. Some run directly in a web browser, while others require installation on your local machine. They are useful for quickly examining datasets, generating plots or maps, and learning about data structures before moving on to scripted workflows.
+
#### Earthdata Search
+[`Earthdata Search`](https://search.earthdata.nasa.gov/) — NASA’s primary web application for searching, filtering, and downloading Earth science data.
+
#### Open Altimetry
+[`Open Altimetry`](https://openaltimetry.org/) — a browser-based tool for visualizing and accessing ICESat and ICESat-2 altimetry data.
+
#### HDFView
+[`HDFView`](https://portal.hdfgroup.org/display/support/HDFView) — a desktop application for viewing and editing HDF4 and HDF5 files.
+
#### Panoply
+[`Panoply`](https://www.giss.nasa.gov/tools/panoply/) — a NASA tool for visualizing netCDF, HDF, and GRIB files with quick map and plot options.
+
#### NCView
+[`NCView`](http://meteora.ucsd.edu/~pierce/ncview_home_page.html) — a lightweight utility for quickly viewing netCDF files, especially time series of 2D variables.
+
#### QGIS
-#### ArcGIS
\ No newline at end of file
+[`QGIS`](https://qgis.org/) — an open-source geographic information system for analyzing and visualizing spatial data.
+
+#### ArcGIS
+
+[`ArcGIS`](https://www.esri.com/en-us/arcgis/about-arcgis/overview) — a commercial GIS platform for advanced mapping, spatial analysis, and data management.
+
+
+
diff --git a/tutorials/ATL06-direct-access.ipynb b/tutorials/ATL06-direct-access.ipynb
new file mode 100644
index 0000000..910376f
--- /dev/null
+++ b/tutorials/ATL06-direct-access.ipynb
@@ -0,0 +1,402 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "e0754304-7036-4530-83ec-86cec0f9886b",
+ "metadata": {
+ "tags": []
+ },
+ "source": [
+ "\n",
+ "\n",
+ "# **Accessing and working with ICESat-2 data in the cloud**\n",
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ "\n",
+ "## **1. Tutorial Overview**\n",
+ "\n",
+ "**Note: This is an updated version of the notebook that was presented to the NSIDC DAAC User Working Group in May 2022**\n",
+ "\n",
+ "This notebook demonstrates searching for cloud-hosted ICESat-2 data and directly accessing Land Ice Height (ATL06) granules from an Amazon Compute Cloud (EC2) instance using the `earthaccess` package. NASA data \"in the cloud\" are stored in Amazon Web Services (AWS) Simple Storage Service (S3) Buckets. **Direct Access** is an efficient way to work with data stored in an S3 Bucket when you are working in the cloud. Cloud-hosted granules can be opened and loaded into memory without the need to download them first. This allows you take advantage of the scalability and power of cloud computing. \n",
+ "\n",
+ "The Amazon Global cloud is divided into geographical regions. To have direct access to data stored in a region, our compute instance - a virtual computer that we create to perform processing operations in place of using our own desktop or laptop - must be in the same region as the data. This is a fundamental concept of _analysis in place_. **NASA cloud-hosted data is in Amazon Region us-west2. So your compute instance must also be in us-west2.** If we wanted to use data stored in another region, to use direct access for that data, we would start a compute instance in that region.\n",
+ "\n",
+ "As an example data collection, we use ICESat-2 Land Ice Height (ATL06) over the Juneau Icefield, AK, for March 2003. ICESat-2 data granules, including ATL06, are stored in HDF5 format. We demonstrate how to open an HDF5 granule and access data variables using `xarray`. Land Ice Heights are then plotted using `hvplot`. \n",
+ "\n",
+ "`earthaccess` is a package developed by Luis Lopez (NSIDC developer) to allow easy search of the NASA Common Metadata Repository (CMR) and download of NASA data collections. It can be used for programmatic search and access for both _DAAC-hosted_ and _cloud-hosted_ data. It manages authenticating using Earthdata Login credentials which are then used to obtain the S3 tokens that are needed for S3 direct access. https://github.com/nsidc/earthaccess\n",
+ "\n",
+ "\n",
+ "### **Credits**\n",
+ "\n",
+ "The notebook was created by Andy Barrett, NSIDC, updated by Jennifer Roebuck, NSIDC, and is based on notebooks developed by Luis Lopez and Mikala Beig, NSIDC.\n",
+ "\n",
+ "For questions regarding the notebook, or to report problems, please create a new issue in the [NSIDC-Data-Tutorials repo](https://github.com/nsidc/NSIDC-Data-Tutorials/issues).\n",
+ "\n",
+ "### **Learning Objectives**\n",
+ "\n",
+ "By the end of this demonstration you will be able to: \n",
+ "1. use `earthaccess` to search for ICESat-2 data using spatial and temporal filters and explore search results; \n",
+ "2. open data granules using direct access to the ICESat-2 S3 bucket; \n",
+ "3. load a HDF5 group into an `xarray.Dataset`; \n",
+ "4. visualize the land ice heights using `hvplot`. \n",
+ "\n",
+ "### **Prerequisites**\n",
+ "\n",
+ "1. An EC2 instance in the us-west-2 region. **NASA cloud-hosted data is in Amazon Region us-west2. So you also need an EC2 instance in the us-west-2 region.** An EC2 instance is a virtual computer that you create to perform processing operations in place of using your own desktop or laptop. Details on how to set up an instance can be found [here](https://nsidc.org/data/user-resources/help-center/nasa-earthdata-cloud-data-access-guide#anchor-1).\n",
+ "2. An Earthdata Login is required for data access. If you don't have one, you can register for one [here](https://urs.earthdata.nasa.gov/).\n",
+ "3. A .netrc file, that contains your Earthdata Login credentials, in your home directory. The current recommended practice for authentication is to create a .netrc file in your home directory following [these instructions](https://nsidc.org/support/how/how-do-i-programmatically-request-data-services) (Step 1) and to use the .netrc file for authentication when required for data access during the tutorial.\n",
+ "4. The *nsidc-tutorials* environment is setup and activated. This [README](https://github.com/nsidc/NSIDC-Data-Tutorials/blob/main/README.md) has setup instructions.\n",
+ "\n",
+ "### **Example of end product** \n",
+ "At the end of this tutorial, the following figure will be generated:\n",
+ " \n",
+ "\n",
+ "### **Time requirement**\n",
+ "\n",
+ "Allow approximately 20 minutes to complete this tutorial."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "816f31af",
+ "metadata": {},
+ "source": [
+ "## **2. Tutorial steps**\n",
+ "\n",
+ "## Import Packages\n",
+ "\n",
+ "The first step in any `python` script or notebook is to import packages. This tutorial requires the following packages:\n",
+ "- `earthaccess`, which enables Earthdata Login authentication and retrieves AWS credentials; enables collection and granule searches; and S3 access;\n",
+ "- `xarray`, used to load data;\n",
+ "- `hvplot`, used to visualize land ice height data."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "d3b4c9e6",
+ "metadata": {},
+ "source": [
+ "We are going to import the whole `earthaccess` package.\n",
+ "\n",
+ "We will also import the whole `xarray` package but use a standard short name `xr`, using the `import as ` syntax. We could use anything for a short name but `xr` is an accepted standard that most `xarray` users are familiar with.\n",
+ "\n",
+ "We only need the `xarray` module from `hvplot` so we import that using the `import .` syntax."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "b00b7a6e",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# For searching NASA data\n",
+ "import earthaccess\n",
+ "\n",
+ "# For reading data, analysis and plotting\n",
+ "import xarray as xr\n",
+ "import hvplot.xarray\n",
+ "import pprint"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "15ae2994",
+ "metadata": {},
+ "source": [
+ "## Authenticate\n",
+ "\n",
+ "The first step is to get the correct authentication that will allow us to get _cloud-hosted_ ICESat-2 data. This is all done through Earthdata Login. The `login` method also gets the correct AWS credentials.\n",
+ "\n",
+ "Login requires your Earthdata Login username and password. The `login` method will automatically search for these credentials as environment variables or in a `.netrc` file, and if those aren't available it will prompt us to enter our username and password. We use a `.netrc` strategy. A `.netrc` file is a text file located in our home directory that contains login information for remote machines. If we don't have a `.netrc` file, `login` can create one for us.\n",
+ "\n",
+ "```\n",
+ "earthaccess.login(strategy='interactive', persist=True)\n",
+ "```"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "37d6a667",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "auth = earthaccess.login()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "28d7b582",
+ "metadata": {},
+ "source": [
+ "## Search for ICESat-2 Collections\n",
+ "\n",
+ "`earthaccess` leverages the Common Metadata Repository (CMR) API to search for collections and granules. [Earthdata Search](https://search.earthdata.nasa.gov/search) also uses the CMR API.\n",
+ "\n",
+ "We can use the `search_datasets` method to search for ICESat-2 collections by setting `keyword='ICESat-2'`.\n",
+ "\n",
+ "This will display the number of data collections (data sets) that meet this search criteria."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "7e80e935",
+ "metadata": {
+ "tags": []
+ },
+ "outputs": [],
+ "source": [
+ "Query = earthaccess.search_datasets(keyword = 'ICESat-2')"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "d3957627",
+ "metadata": {},
+ "source": [
+ "In this case there are 65 collections that have the keyword ICESat-2.\n",
+ "\n",
+ "The `search_datasets` method returns a python list of `DataCollection` objects. We can view the metadata for each collection in long form by passing a `DataCollection` object to print or as a summary using the `summary` method. We can also use the `pprint` function to Pretty Print each object.\n",
+ "\n",
+ "We will do this for the first 10 results (objects)."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "f54b13d9",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "for collection in Query[:10]:\n",
+ " pprint.pprint(collection.summary(), sort_dicts=True, indent=4)\n",
+ " print('')\n",
+ " "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "b88357e5",
+ "metadata": {},
+ "source": [
+ "For each collection, `summary` returns a subset of fields from the collection metadata and the Unified Metadata Model (UMM):\n",
+ "- `concept-id` is a unique id for the collection. It consists of an alphanumeric code and the provider-id specific to the DAAC (Distributed Active Archive Center). You can use the `concept_id` to search for data granules.\n",
+ "- `short_name` is a quick way of referring to a collection (instead of using the full title). It can be found on the collection landing page underneath the collection title after 'DATA SET ID'. See the table below for a list of the shortnames for ICESat-2 collections.\n",
+ "- `version` is the version of each collection.\n",
+ "- `file-type` gives information about the file format of the collection granules.\n",
+ "- `get-data` is a collection of URLs that can be used to access the data, collection landing pages and data tools. \n",
+ "- `cloud-info` this is for cloud-hosted data and provides additional information about the location of the S3 bucket that holds the data and where to get temporary AWS S3 credentials to access the S3 buckets. `earthaccess` handles these credentials and the links to the S3 buckets, so in general you won't need to worry about this information. \n",
+ "\n",
+ "For the ICESat-2 search results, within the concept-id, there is a provider-id; `NSIDC_ECS` and `NSIDC_CPRD`. `NSIDC_ECS` which is for the _on-prem_ collections and `NSIDC_CPRD` is for the _cloud-hosted_ collections. \n",
+ "\n",
+ "For ICESat-2, `ShortNames` are generally how different products are referred to.\n",
+ "\n",
+ "| ShortName | Product Description |\n",
+ "|:-----------:|:---------------------|\n",
+ "| ATL03 | ATLAS/ICESat-2 L2A Global Geolocated Photon Data |\n",
+ "| ATL06 | ATLAS/ICESat-2 L3A Land Ice Height |\n",
+ "| ATL07 | ATLAS/ICESat-2 L3A Sea Ice Height |\n",
+ "| ATL08 | ATLAS/ICESat-2 L3A Land and Vegetation Height |\n",
+ "| ATL09 | ATLAS/ICESat-2 L3A Calibrated Backscatter Profiles and Atmospheric Layer Characteristics |\n",
+ "| ATL10 | ATLAS/ICESat-2 L3A Sea Ice Freeboard |\n",
+ "| ATL11 | ATLAS/ICESat-2 L3B Slope-Corrected Land Ice Height Time Series |\n",
+ "| ATL12 | ATLAS/ICESat-2 L3A Ocean Surface Height |\n",
+ "| ATL13 | ATLAS/ICESat-2 L3A Along Track Inland Surface Water Data |"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "fc62d6f6",
+ "metadata": {},
+ "source": [
+ "### Search for cloud-hosted data\n",
+ "For most collections, to search for only data in the cloud, the `cloud_hosted` method can be used. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "322d78c3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Query = earthaccess.search_datasets(\n",
+ " keyword = 'ICESat-2',\n",
+ " cloud_hosted = True\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "8df10797",
+ "metadata": {},
+ "source": [
+ "## Search a data set using spatial and temporal filters \n",
+ "\n",
+ "We can use the `search_data` method to search for granules within a data set by location and time using spatial and temporal filters. In this example, we will search for data granules from the ATL06 verison 006 cloud-hosted data set over the Juneau Icefield, AK, for March and April 2020.\n",
+ "\n",
+ "The temporal range is identified with standard date strings, and latitude-longitude corners of a bounding box is specified. Polygons and points, as well as shapefiles can also be specified.\n",
+ "\n",
+ "This will display the number of granules that match our search. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "5fba5c34",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "results = earthaccess.search_data(\n",
+ " short_name = 'ATL06',\n",
+ " version = '006',\n",
+ " cloud_hosted = True,\n",
+ " bounding_box = (-134.7,58.9,-133.9,59.2),\n",
+ " temporal = ('2020-03-01','2020-04-30'),\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "a7bc1b37",
+ "metadata": {},
+ "source": [
+ "To display the rendered metadata, including the download link, granule size and two images, we will use `display`. In the example below, all 4 results are shown. \n",
+ "\n",
+ "The download link is `https` and can be used download the granule to your local machine. This is similar to downloading _DAAC-hosted_ data but in this case the data are coming from the Earthdata Cloud. For NASA data in the Earthdata Cloud, there is no charge to the user for egress from AWS Cloud servers. This is not the case for other data in the cloud.\n",
+ "\n",
+ "Note the `[None, None, None, None]` that is displayed at the end can be ignored, it has no meaning in relation to the metadata."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "a04370d3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "[display(r) for r in results]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "810da59e",
+ "metadata": {
+ "tags": []
+ },
+ "source": [
+ "## Use Direct-Access to open, load and display data stored on S3\n",
+ "\n",
+ "Direct-access to data from an S3 bucket is a two step process. First, the files are opened using the `open` method. The `auth` object created at the start of the notebook is used to provide Earthdata Login authentication and AWS credentials.\n",
+ "\n",
+ "The next step is to load the data. In this case, data are loaded into an `xarray.Dataset`. Data could be read into `numpy` arrays or a `pandas.Dataframe`. However, each granule would have to be read using a package that reads HDF5 granules such as `h5py`. `xarray` does this all _under-the-hood_ in a single line but for a single group in the HDF5 granule*.\n",
+ "\n",
+ "*ICESat-2 measures photon returns from 3 beam pairs numbered 1, 2 and 3 that each consist of a left and a right beam. In this case, we are interested in the left ground track (gt) of beam pair 1. "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "11205bbb",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "files = earthaccess.open(results)\n",
+ "ds = xr.open_dataset(files[1], group='/gt1l/land_ice_segments')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "75881751",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "ds"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "1282ce34",
+ "metadata": {},
+ "source": [
+ "`hvplot` is an interactive plotting tool that is useful for exploring data."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "be7386c3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "ds['h_li'].hvplot(kind='scatter', s=2)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "0a4335c8",
+ "metadata": {},
+ "source": [
+ "## **3. Learning outcomes recap**\n",
+ "\n",
+ "We have learned how to:\n",
+ "1. use `earthaccess` to search for ICESat-2 data using spatial and temporal filters and explore search results;\n",
+ "2. open data granules using direct access to the ICESat-2 S3 bucket;\n",
+ "3. load a HDF5 group into an xarray.Dataset;\n",
+ "4. visualize the land ice heights using hvplot."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "317ea6bd",
+ "metadata": {},
+ "source": [
+ "## **4. Additional resources**\n",
+ "\n",
+ "For general information about NSIDC DAAC data in the Earthdata Cloud: \n",
+ "\n",
+ "[FAQs About NSIDC DAAC's Earthdata Cloud Migration](https://nsidc.org/data/user-resources/help-center/faqs-about-nsidc-daacs-earthdata-cloud-migration)\n",
+ "\n",
+ "[NASA Earthdata Cloud Data Access Guide](https://nsidc.org/data/user-resources/help-center/nasa-earthdata-cloud-data-access-guide)\n",
+ "\n",
+ "Additional tutorials and How Tos:\n",
+ "\n",
+ "[NASA Earthdata Cloud Cookbook](https://nasa-openscapes.github.io/earthdata-cloud-cookbook/)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "6a67c7eb",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "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.9.18"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/tutorials/tutorials_overview.qmd b/tutorials/tutorials_overview.qmd
new file mode 100644
index 0000000..565827c
--- /dev/null
+++ b/tutorials/tutorials_overview.qmd
@@ -0,0 +1,16 @@
+---
+title: "Tutorials / Workshops"
+---
+
+This section of the cookbook contains longer form tutorials providing examples of data search and access within a workflow. NSIDC is frequently involved in hackweeks and workshops as well. Content from past events can be found in the [NSIDC Data Tutorials Repository](https://github.com/nsidc/NSIDC-Data-Tutorials).
+
+**Current cookbook tutorials:**
+
+- [Direct cloud access of ICESat-2 (*ATL06 Land Ice Height*) data](/tutorials/ATL06-direct-access.ipynb): a notebook that demonstrates searching for cloud-hosted ICESat-2 data and directly accessing Land Ice Height (ATL06) granules from an Amazon Compute Cloud (EC2) instance using the `earthaccess` package.
+- [Download of ICESat-2 (*ATL07 Sea Ice*) data](/tutorials/working_with_icesat2_sea_ice_data.ipynb): a notebook that demonstrates searching for and accessing ICESat-2 data using the Python `earthaccess` package, reading and visualizing the data using `xarray` and `pandas`, and that uses `matplotlib` and `cartopy` to produce a map of search results.
+
+**Tutorials coming soon:**
+
+- Ideas?
+- *Let us know what you'd like to see!*
+
diff --git a/tutorials/working_with_icesat2_sea_ice_data.ipynb b/tutorials/working_with_icesat2_sea_ice_data.ipynb
new file mode 100644
index 0000000..784561b
--- /dev/null
+++ b/tutorials/working_with_icesat2_sea_ice_data.ipynb
@@ -0,0 +1,14127 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "b693cb9e-7692-4d65-9688-8ec7b1636e3f",
+ "metadata": {},
+ "source": [
+ "# Working with ICESat-2 Sea Ice Products\n",
+ "\n",
+ "## Overview\n",
+ "\n",
+ "In this notebook, we demonstrate searching for and accessing ICESat-2 data using the Python `earthaccess` package, and reading and visualizing the data using `xarray` and `pandas`. We also use `matplotlib` and `cartopy` to produce a map of search results. \n",
+ "\n",
+ "`earthaccess` is a community developed open source Python package to streamline programmatic search and access for NASA data archives. Users can find data sets and data granules, and either download or \"stream\" NASA data in as little as three \"lines of code\", regardless of whether users are working in the cloud or on a local machine. The `earthaccess` package handles authentication for NASA Earthdata Login and the AWS hosted NASA Earthdata cloud. All you need is an Earthdata Login.\n",
+ "\n",
+ "`xarray` has become the go to Python package for Earth Data Science. With v2024.10.0, `xarray` can be used to read and work with data stored hiearchical file structures like the HDF5 file format used for ICESat-2, using the [`DataTree`](https://xarray.dev/blog/datatree) structure. We use [`xarray.DataTree`](https://docs.xarray.dev/en/stable/generated/xarray.DataTree.html#xarray.DataTree) to read and explore ICESat-2 files.\n",
+ "\n",
+ "Although `xarray` could be used to work with the ICESat-2 data, the nested-group structure can be a little cumbersome. So we create a `pandas.DataFrame` object for a subset of data to make plotting easier.\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "cebf284d-e1ca-4602-8bf1-d55718675710",
+ "metadata": {},
+ "source": [
+ "## Import libraries\n",
+ "\n",
+ "As with all Python, we import the libraries we will use."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "6c2dc3a3-b0a9-4fcb-a1ba-d75a9dc2c8d0",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "/Users/mibe9765/miniforge3/envs/nsidc-tutorial-icesat2-apps/lib/python3.12/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
+ " from .autonotebook import tqdm as notebook_tqdm\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "earthaccess: 0.14.0\n",
+ "xarray: 2025.7.1\n",
+ "cartopy: 0.25.0\n"
+ ]
+ }
+ ],
+ "source": [
+ "# Search for data\n",
+ "import earthaccess\n",
+ "\n",
+ "# Read and work with data\n",
+ "import xarray as xr\n",
+ "import pandas as pd\n",
+ "\n",
+ "# To plot results\n",
+ "import matplotlib.pyplot as plt\n",
+ "from matplotlib.colors import ListedColormap, BoundaryNorm\n",
+ "from matplotlib.lines import Line2D\n",
+ "\n",
+ "# To plot map of results\n",
+ "import cartopy\n",
+ "import cartopy.crs as ccrs\n",
+ "import cartopy.feature as cfeature\n",
+ "\n",
+ "# Check package versions: you may want to update if you have older versions\n",
+ "# See README.md\n",
+ "print(f\"earthaccess: {earthaccess.__version__}\")\n",
+ "print(f\"xarray: {xr.__version__}\")\n",
+ "print(f\"cartopy: {cartopy.__version__}\")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "79c94fa1-0b8f-476d-96eb-e5a70cd0ac81",
+ "metadata": {},
+ "source": [
+ "## Authenticate\n",
+ "\n",
+ "Although you do not need an Earthdata login to search for NASA data, you do need one to access that data. It is better just to login at the start of a workflow so you don't forget.\n",
+ "\n",
+ "You will need an Earthdata login. If you don't have one, you can register for one, for free, [here](https://urs.earthdata.nasa.gov/users/new).\n",
+ "\n",
+ "`earthaccess` will prompt for your Earthdata login username and password. You can also set up a `.netrc` file or environment variables. `earthaccess` will search for these alternatives before prompting for a username and login. See the `earthaccess` [documentation](https://earthaccess.readthedocs.io/en/latest/user_guide/authenticate/) to lean how to do this."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "293c6a1e-b7a5-4c60-beab-e34de3ca7399",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "auth = earthaccess.login()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "bbf8a2fe-cf35-4d9d-87d7-655a2121e7dd",
+ "metadata": {},
+ "source": [
+ "## Search for ICESat-2 Related Datasets\n",
+ "\n",
+ "Before we search for data, we want to know what ICESat-2 datasets and what versions of these datasets are available. We will also need to know the `short-name` or `concept-id` of the ICESat-2 dataset we want to use.\n",
+ "\n",
+ "The `short-name` can be found on the dataset landing pages for products or we can search for it.\n",
+ "\n",
+ "To search for datasets (or Collections as NASA calls them), we use the `search_datasets` method. This allows searches by keywords, platform, time range, spatial extent, version, and whether data are hosted in the cloud or still archived at a NASA DAAC.\n",
+ "\n",
+ "Here, we will do a simple search using `platform` for ICESat-2 data. The `platform` and `keyword` searches are not case sensitive. We'll add `downloadable=True` and `cloud_hosted=True` to further refine the search."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "63022c99-7ff9-41ef-8ac0-774f9481fc10",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "results = earthaccess.search_datasets(\n",
+ " platform=\"icesat-2\",\n",
+ " downloadable=True,\n",
+ " cloud_hosted=True,\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "cecd5fd1-ba0f-4c05-a821-f8e4a07132e0",
+ "metadata": {},
+ "source": [
+ "`search_datasets` returns a Python List of data collections. We can find how many datasets were found by getting the length of that list using `len`."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "4ef29d21-ad9e-4dfd-8a16-c5055c002f13",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "47"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "len(results)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "70a2bd3a-4de3-478d-8f93-3cdb526ec528",
+ "metadata": {},
+ "source": [
+ "There are 47 datasets. Because `results` is a list, we can access any element of that list by giving an index. Here, we'll access the first element (`0`). Just change the index to see a different dataset. \n",
+ "\n",
+ "Each data collection has a `summary` method that returns a Python dictionary containing `short-name`, `concept-id`, and `version`, along with information about the file type and links to get the data. The file links are used by earthaccess, so we don't need to worry about these too much."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "ecac52e9-9753-46bb-b748-d49750d2548b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "{'short-name': 'ATL03',\n",
+ " 'concept-id': 'C2596864127-NSIDC_CPRD',\n",
+ " 'version': '006',\n",
+ " 'file-type': \"[{'FormatType': 'Native', 'Format': 'HDF5', 'FormatDescription': 'HTTPS'}]\",\n",
+ " 'get-data': ['https://search.earthdata.nasa.gov/search/granules?p=C2596864127-NSIDC_CPRD',\n",
+ " 'https://cmr.earthdata.nasa.gov/virtual-directory/collections/C2596864127-NSIDC_CPRD',\n",
+ " 'https://nsidc.org/data/data-access-tool/ATL03/versions/6/'],\n",
+ " 'cloud-info': {'Region': 'us-west-2',\n",
+ " 'S3BucketAndObjectPrefixNames': ['nsidc-cumulus-prod-protected/ATLAS/ATL03/006',\n",
+ " 'nsidc-cumulus-prod-public/ATLAS/ATL03/006'],\n",
+ " 'S3CredentialsAPIEndpoint': 'https://data.nsidc.earthdatacloud.nasa.gov/s3credentials',\n",
+ " 'S3CredentialsAPIDocumentationURL': 'https://data.nsidc.earthdatacloud.nasa.gov/s3credentialsREADME'}}"
+ ]
+ },
+ "execution_count": 6,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "results[0].summary()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "34ab719f-024e-46ed-9045-afa1aa7d5d25",
+ "metadata": {},
+ "source": [
+ "We also want to be able to see all the other datasets available. Because there are a lot of datasets, we'll just get the `short-name` and `version`.\n",
+ "\n",
+ "We'll use a Python _list comprehension_, which is like a for-loop, to extract the information we want. We use the `sorted` function to sort the list into alphabetical order using the `short-name` (the first element of the _tuple_) as a key."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "19b2366c-a0e6-4dec-aa4b-3024501d9f4b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "[('ATL02', '007'),\n",
+ " ('ATL02', '006'),\n",
+ " ('ATL03', '006'),\n",
+ " ('ATL03', '007'),\n",
+ " ('ATL04', '007'),\n",
+ " ('ATL04', '006'),\n",
+ " ('ATL06', '006'),\n",
+ " ('ATL06', '007'),\n",
+ " ('ATL07', '006'),\n",
+ " ('ATL07', '007'),\n",
+ " ('ATL07QL', '007'),\n",
+ " ('ATL08', '006'),\n",
+ " ('ATL08', '007'),\n",
+ " ('ATL08QL', '007'),\n",
+ " ('ATL08QL', '006'),\n",
+ " ('ATL09', '006'),\n",
+ " ('ATL09', '007'),\n",
+ " ('ATL09QL', '007'),\n",
+ " ('ATL10', '006'),\n",
+ " ('ATL10', '007'),\n",
+ " ('ATL10QL', '007'),\n",
+ " ('ATL11', '006'),\n",
+ " ('ATL12', '006'),\n",
+ " ('ATL12', '007'),\n",
+ " ('ATL13', '006'),\n",
+ " ('ATL13', '007'),\n",
+ " ('ATL13QL', '007'),\n",
+ " ('ATL14', '004'),\n",
+ " ('ATL15', '004'),\n",
+ " ('ATL16', '005'),\n",
+ " ('ATL17', '005'),\n",
+ " ('ATL19', '003'),\n",
+ " ('ATL20', '004'),\n",
+ " ('ATL21', '003'),\n",
+ " ('ATL22', '003'),\n",
+ " ('ATL23', '001'),\n",
+ " ('ATL24', '001'),\n",
+ " ('Boreal_AGB_Density_ICESat2_2186', '1'),\n",
+ " ('CMS_Global_Forest_AGC_2180', '1'),\n",
+ " ('GEDI_ICESAT2_Global_Veg_Height_2294', '1'),\n",
+ " ('IS2ATBABD', '1'),\n",
+ " ('IS2CHM', '1'),\n",
+ " ('IS2GZANT', '1'),\n",
+ " ('IS2MPDDA', '3'),\n",
+ " ('IS2SITDAT4', '001'),\n",
+ " ('IS2SITMOGR4', '3'),\n",
+ " ('NSIDC-0782', '1')]"
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "sorted(\n",
+ " [(r.summary()[\"short-name\"], r.summary()[\"version\"]) for r in results], \n",
+ " key=lambda x: x[0]\n",
+ ")"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ebe4a069-5ca2-45ab-bd8b-bc5140fc6ed9",
+ "metadata": {},
+ "source": [
+ "The datasets with `short-names` that start with ATL are the standard ICESat-2 products. Some of these `short-names` have `QL` at the end. These are quick-look products. Also, most products have two versions. This is because the two most recent versions are archived."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "b1452be2-1a0c-4b23-a35a-654817d75875",
+ "metadata": {},
+ "source": [
+ "## Search for ATL07 data granules\n",
+ "\n",
+ "Now that we know the product short_name, we can search for data. Here, I am interested in granules that were collected during the validation campaign. I know there was an underflight of ICESat-2 over sea ice on 26 July 2022, so we will search for ATL07 data for that date.\n",
+ "\n",
+ "To search for data, we use `earthaccess.search_data`. There are many ways to construct a search. Some examples are below.\n",
+ "\n",
+ "Currently, processing of ATL07 and ATL10 have been halted because of some issues with input data, so only version 006 is available."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "56c86d4d-5617-4d65-8176-e4cde9c8abbf",
+ "metadata": {},
+ "source": [
+ "### By temporal range\n",
+ "\n",
+ "Searching using the `temporal` filter with `short-name` and `version` will return all data granules within the time range specified. \n",
+ "\n",
+ "The `temporal` keyword expects a tuple with two date-like variables. These can be strings following the format `YYYY-MM-DD` or `datetime` objects. Because we only want one day of data, the dates are the same.\n",
+ "\n",
+ "As with the datasets `results`, `search_data` returns a Python List so we can find the number of granules returned using `len`."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "id": "0a9a6d1e-04b3-4b6c-b924-418dce9e4b22",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "62"
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "granules = earthaccess.search_data(\n",
+ " short_name=\"ATL07\",\n",
+ " temporal=(\"2022-07-26\",\"2022-07-26\"),\n",
+ " version=\"006\",\n",
+ ")\n",
+ "\n",
+ "len(granules)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "f8f91810-8db0-41e3-b808-5c73c084a129",
+ "metadata": {},
+ "source": [
+ "In a Jupyter notebook, we can get a rendering of information about a single granule, including some thumbnails of the location and data just by running a code-cell with one granule result."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 9,
+ "id": "11440ca7-8648-43b9-b21b-b10541b30a01",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "
bin size of fine histogram along track segment length
[1 values with dtype=float32]
delta_h_tab
(phony_dim_21)
float32
...
long_name :
h table spacing
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
the waveform table spacing for the height (h) dimension
[1 values with dtype=float32]
delta_w_tab
(phony_dim_21)
float32
...
long_name :
w table spacing
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
the waveform table spacing for the width (w) dimension
[1 values with dtype=float32]
h_diff_limit
(phony_dim_21)
float32
...
long_name :
Max Ht Difference
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Maximum height difference between the two weighted Gaussian mean from the initial tracked height (units = meters)
[1 values with dtype=float32]
lb_h_tab
(phony_dim_21)
float32
...
long_name :
lower bound of h table
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
lower bound of h table
[1 values with dtype=float32]
lb_oc_switch_strong
(phony_dim_21)
float32
...
long_name :
Lower bound of overlapping control for strong beam
contentType :
auxiliaryInformation
description :
Lower bound of photon rate overlapping control for strong beam when overlap is turned off
units :
photons/shot
source :
ATBD section 4.2.2.4
[1 values with dtype=float32]
lb_oc_switch_weak
(phony_dim_21)
float32
...
long_name :
Lower bound of overlapping control for weak beam
units :
photons/shot
source :
ATBD section 4.2.2.4
contentType :
auxiliaryInformation
description :
Lower bound of photon rate overlapping control for weak beam when overlap is turned off
[1 values with dtype=float32]
lb_w_tab
(phony_dim_21)
float32
...
long_name :
lower bound of w table
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
lower bound of w table
[1 values with dtype=float32]
lb_win_s
(phony_dim_21)
float32
...
long_name :
lower bound window signal
units :
meters
contentType :
auxiliaryInformation
description :
window (Ws) containing signal photons
source :
Sea Ice ATBD
[1 values with dtype=float32]
n_photon_min
(phony_dim_21)
float32
...
long_name :
Minimum number of photons
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Minimum fraction of photons needed for tracking
[1 values with dtype=float32]
n_photon_trim
(phony_dim_21)
int32
...
long_name :
Min Photons
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Minimum number of photons for trimming leading/trailing bins
[1 values with dtype=int32]
n_s
(phony_dim_21)
int32
...
long_name :
number photons in W_s
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Number of photons to collect within W_s fine tracking window
[1 values with dtype=int32]
n_spec_scale
(phony_dim_21)
float32
...
long_name :
Specular Scaling Value
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Scalling parameter used for scaling value of N_SPECULAR for the weak beam. Specular returns for weak beam are defined as a shot having more photons than (N_SPECULAR/N_SPEC_SCALE)
[1 values with dtype=float32]
n_specular
(phony_dim_21)
float32
...
long_name :
number photons Specular returns
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Specular returns limits
[1 values with dtype=float32]
n_w
(phony_dim_21)
int32
...
long_name :
number of standard deviations
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
number of standard deviations
[1 values with dtype=int32]
overlap_switch
(phony_dim_21)
int32
...
long_name :
Overlap Segments
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
1
contentType :
auxiliaryInformation
description :
Use of overlapping height segments (1 = yes, 0 = no)
flag_meanings :
no yes
flag_values :
[0 1]
[1 values with dtype=int32]
tep_used_gt1_strong
(phony_dim_21)
int32
...
long_name :
TEP Table PCE1_Strong
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
TEP used in table generation for strong beam of ground track 1 (1 or 3)
[1 values with dtype=int32]
tep_used_gt1_weak
(phony_dim_21)
int32
...
long_name :
TEP Table PCE1_Weak
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
TEP used in table generation for weak beam of ground track 1 (1 or 3)
[1 values with dtype=int32]
tep_used_gt2_strong
(phony_dim_21)
int32
...
long_name :
TEP Table PCE2_Strong
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
TEP used in table generation for strong beam of ground track 2 (1 or 3)
[1 values with dtype=int32]
tep_used_gt2_weak
(phony_dim_21)
int32
...
long_name :
TEP Table PCE2_Weak
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
TEP used in table generation for weak beam of ground track 2 (1 or 3)
[1 values with dtype=int32]
tep_used_gt3_strong
(phony_dim_21)
int32
...
long_name :
TEP Table PCE3_Strong
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
TEP used in table generation for strong beam of ground track 3 (1 or 3)
[1 values with dtype=int32]
tep_used_gt3_weak
(phony_dim_21)
int32
...
long_name :
TEP Table PCE3_Weak
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
TEP used in table generation for weak beam of ground track 3 (1 or 3)
[1 values with dtype=int32]
ub_h_tab
(phony_dim_21)
float32
...
long_name :
upper bound of h table
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
the waveform upper bound for the height (h) dimension
[1 values with dtype=float32]
ub_length_strong
(phony_dim_21)
int32
...
long_name :
upper bound segment length strong
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
upper bound of segment length strong beam
[1 values with dtype=int32]
ub_length_weak
(phony_dim_21)
int32
...
long_name :
upper bound segment length weak
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
upper bound of segment length weak beam
[1 values with dtype=int32]
ub_oc_switch_strong
(phony_dim_21)
float32
...
long_name :
Upper bound of overlapping control for strong beam
units :
photons/shot
source :
ATBD section 4.2.2.4
contentType :
auxiliaryInformation
description :
Upper bound of photon rate overlapping control for strong beam when overlap is turned off
[1 values with dtype=float32]
ub_oc_switch_weak
(phony_dim_21)
float32
...
long_name :
Upper bound of overlapping control for weak beam
units :
photons/shot
source :
ATBD section 4.2.2.4
contentType :
auxiliaryInformation
description :
Upper bound of photon rate overlapping control for weak beam when overlap is turned off
[1 values with dtype=float32]
ub_w_tab
(phony_dim_21)
float32
...
long_name :
upper bound of w table
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
the waveform upper bound for the width (w) dimension
[1 values with dtype=float32]
ub_win_s
(phony_dim_21)
float32
...
long_name :
upper bound window signal
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
window (Ws) containing signal photons
[1 values with dtype=float32]
Description :
Contains ancillary parameters related to the fine surface finding algorithm.
Indicates the maximum segment_id to process (if specified in control). The actual maximum processed may be greater than specified.
[1 values with dtype=int32]
geoseg_min
(phony_dim_22)
int32
...
long_name :
Minimum Segment ID
units :
1
source :
Operations
contentType :
auxiliaryInformation
description :
Indicates the minimum segment_id to process (if specified in control)
[1 values with dtype=int32]
inverted_barometer_switch
(phony_dim_22)
int32
...
long_name :
Inverted Barometer Switch
standard_name :
inverted_barometer_switch
units :
1
source :
Operations
valid_min :
0
valid_max :
1
contentType :
auxiliaryInformation
description :
Switch determines which value of inverted barometer to use to correct photon heights before processing. If switch = 0, use inverted barometer computed using static mean_ocean_slp (1013.25 PA). If switch = 1, use dynamic inverted barometer computed using computed mean_ocean_slp (from ANC10 and ANC48, ancillary_data/sea_ice/mean_ocean_slp).
Switch which determines how ssh height threshold is determined.
[1 values with dtype=int32]
class_noise_level
(phony_dim_23)
float32
...
long_name :
surface classification elevation maximum
standard_name :
class_elev_max
units :
m
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Surface classification height noise level.
[1 values with dtype=float32]
contrast_filter_percentile
(phony_dim_23)
float32
...
long_name :
percintile of photon rate for contrast filter
standard_name :
contrast_filter_percentile
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
percentile of collected photon rates to use in computation of contrast ratio
[1 values with dtype=float32]
contrast_filter_segment_type
(phony_dim_23)
int32
...
long_name :
segment types used for contrast filter
units :
1
source :
Sea Ice ATBD
standard_name :
contrast_filter_seg_type
contentType :
auxiliaryInformation
description :
Segment types used for collecting photon rates used in computing contrast ratio. If set to 0, all segment types are included. If set to 1, only sea ice segments used.
flag_meanings :
all_segments sea_ice_segments_only
flag_values :
[0 1]
[1 values with dtype=int32]
contrast_length_scale
(phony_dim_23)
float32
...
long_name :
Length around segment for contrast filter
standard_name :
pr_ratio_extent
units :
km
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Before/after along-track distance from segment for calculating the contrast ratio (km)
[1 values with dtype=float32]
height_pct
(phony_dim_23)
float32
...
long_name :
Percentile Hts
units :
percentile
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Percentile of sorted heights
[1 values with dtype=float32]
max_incidence_angle
(phony_dim_23)
float32
...
long_name :
max incidence angle
units :
degrees
source :
ATBD section 4.3.1.4
contentType :
auxiliaryInformation
description :
maximum beam incidence angle for surface classification/freeboard calculation. If incidence angle (complement of beam_coelev angle) is greater than max_incidence_angle, height_segment_type will be set to -1.
[1 values with dtype=float32]
p1
(phony_dim_23)
float32
...
long_name :
pr (clouds)
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
photon rate (clouds)
[1 values with dtype=float32]
p2
(phony_dim_23)
float32
...
long_name :
pr (snow)
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
photon rate (snow)
[1 values with dtype=float32]
p3
(phony_dim_23)
float32
...
long_name :
pr (shadow)
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
photon rate (shadow)
[1 values with dtype=float32]
p4
(phony_dim_23)
float32
...
long_name :
pr (specular)
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
photon rate (specular)
[1 values with dtype=float32]
pr_ratio_extent
(phony_dim_23)
int32
...
long_name :
Number of segments to examine around a dark lead segment for filtering
standard_name :
pr_ratio_extent
units :
count
source :
ATBD section 4.3.1.4
contentType :
auxiliaryInformation
description :
Number of segments to examine both before and after a dark lead segment when filtering dark leads. (DEFUNCT)
[1 values with dtype=int32]
ssh_proc_length
(phony_dim_23)
float32
...
long_name :
sea surface height process length
units :
m
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
length in meters of processing interval when performing surface classification
[1 values with dtype=float32]
th_pr_ratio
(phony_dim_23)
float32
...
long_name :
Minimum photon rate ratio for filtering
standard_name :
th_pr_ratio
units :
count
source :
ATBD section 4.3.1.4
contentType :
auxiliaryInformation
description :
Photon rate ratio used to determine if lead candidate should be filtered.
[1 values with dtype=float32]
theta_cntl
(phony_dim_23)
float32
...
long_name :
Solar elevation for use of background rate
units :
1
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Solar elevation for controlling use of background rate
[1 values with dtype=float32]
theta_nlb
(phony_dim_23)
float32
...
long_name :
Solar elevation normalization lower bound
units :
degrees
source :
ATBD section 4.3.1.4
contentType :
auxiliaryInformation
description :
Solar elevation normalization lower bound for use of normalized background rate
[1 values with dtype=float32]
theta_ref
(phony_dim_23)
float32
...
long_name :
Solar elevation normalization angle
units :
degrees
source :
ATBD section 4.3.1.4
contentType :
auxiliaryInformation
description :
Solar elevation normalization angle for use of normalized background rate
[1 values with dtype=float32]
w1
(phony_dim_23)
float32
...
long_name :
max width (dark smooth lead)
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
max width (dark smooth lead)
[1 values with dtype=float32]
w2
(phony_dim_23)
float32
...
long_name :
max width (dark rough lead)
units :
meters
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
max width (dark rough lead)
[1 values with dtype=float32]
Description :
Contains ancillary parameters related to the surface classification algorithm.
phony_dim_25: 1
atlas_sdp_gps_epoch
(phony_dim_25)
datetime64[ns]
...
long_name :
ATLAS Epoch Offset
source :
Operations
contentType :
auxiliaryInformation
description :
Number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS Standard Data Product (SDP) epoch (2018-01-01:T00.00.00.000000 UTC). Add this value to delta time parameters to compute full gps_seconds (relative to the GPS epoch) for each data point.
[1 values with dtype=datetime64[ns]]
control
(phony_dim_25)
<U100000
...
long_name :
Control File
units :
1
source :
Operations
contentType :
auxiliaryInformation
description :
PGE-specific control file used to generate this granule. To re-use, replace breaks (BR) with linefeeds.
[1 values with dtype=<U100000]
data_end_utc
(phony_dim_25)
<U27
...
long_name :
End UTC Time of Granule (CCSDS-A, Actual)
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
UTC (in CCSDS-A format) of the last data point within the granule.
[1 values with dtype=<U27]
data_start_utc
(phony_dim_25)
<U27
...
long_name :
Start UTC Time of Granule (CCSDS-A, Actual)
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
UTC (in CCSDS-A format) of the first data point within the granule.
[1 values with dtype=<U27]
end_cycle
(phony_dim_25)
int32
...
long_name :
Ending Cycle
units :
1
source :
Derived
valid_min :
0
valid_max :
99
contentType :
auxiliaryInformation
description :
The ending cycle number associated with the data contained within this granule. The cycle number is the counter of the number of 91-day repeat cycles completed by the mission.
[1 values with dtype=int32]
end_delta_time
(phony_dim_25)
datetime64[ns]
...
long_name :
ATLAS End Time (Actual)
standard_name :
time
source :
Derived
contentType :
auxiliaryInformation
description :
Number of GPS seconds since the ATLAS SDP epoch at the last data point in the file. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
[1 values with dtype=datetime64[ns]]
end_geoseg
(phony_dim_25)
int32
...
long_name :
Ending Geolocation Segment
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
The ending geolocation segment number associated with the data contained within this granule. ICESat granule geographic regions are further refined by geolocation segments. During the geolocation process, a geolocation segment is created approximately every 20m from the start of the orbit to the end. The geolocation segments help align the ATLAS strong a weak beams and provide a common segment length for the L2 and higher products. The geolocation segment indices differ slightly from orbit-to-orbit because of the irregular shape of the Earth. The geolocation segment indices on ATL01 and ATL02 are only approximate because beams have not been aligned at the time of their creation.
[1 values with dtype=int32]
end_gpssow
(phony_dim_25)
timedelta64[ns]
...
long_name :
Ending GPS SOW of Granule (Actual)
source :
Derived
contentType :
auxiliaryInformation
description :
GPS seconds-of-week of the last data point in the granule.
[1 values with dtype=timedelta64[ns]]
end_gpsweek
(phony_dim_25)
int32
...
long_name :
Ending GPSWeek of Granule (Actual)
units :
weeks from 1980-01-06
source :
Derived
contentType :
auxiliaryInformation
description :
GPS week number of the last data point in the granule.
[1 values with dtype=int32]
end_orbit
(phony_dim_25)
int32
...
long_name :
Ending Orbit Number
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
The ending orbit number associated with the data contained within this granule. The orbit number increments each time the spacecraft completes a full orbit of the Earth.
[1 values with dtype=int32]
end_region
(phony_dim_25)
int32
...
long_name :
Ending Region
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
The ending product-specific region number associated with the data contained within this granule. ICESat-2 data products are separated by geographic regions. The data contained within a specific region are the same for ATL01 and ATL02. ATL03 regions differ slightly because of different geolocation segment locations caused by the irregular shape of the Earth. The region indices for other products are completely independent.
[1 values with dtype=int32]
end_rgt
(phony_dim_25)
int32
...
long_name :
Ending Reference Groundtrack
units :
1
source :
Derived
valid_min :
1
valid_max :
1387
contentType :
auxiliaryInformation
description :
The ending reference groundtrack (RGT) number associated with the data contained within this granule. There are 1387 reference groundtrack in the ICESat-2 repeat orbit. The reference groundtrack increments each time the spacecraft completes a full orbit of the Earth and resets to 1 each time the spacecraft completes a full cycle.
[1 values with dtype=int32]
granule_end_utc
(phony_dim_25)
<U27
...
long_name :
End UTC Time of Granule (CCSDS-A, Requested)
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
Requested end time (in UTC CCSDS-A) of this granule.
[1 values with dtype=<U27]
granule_start_utc
(phony_dim_25)
<U27
...
long_name :
Start UTC Time of Granule (CCSDS-A, Requested)
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
Requested start time (in UTC CCSDS-A) of this granule.
[1 values with dtype=<U27]
qa_at_interval
(phony_dim_25)
float64
...
long_name :
QA Along-Track Interval
units :
1
source :
control
contentType :
auxiliaryInformation
description :
Statistics time interval for along-track QA data.
[1 values with dtype=float64]
release
(phony_dim_25)
<U80
...
long_name :
Release Number
units :
1
source :
Operations
contentType :
auxiliaryInformation
description :
Release number of the granule. The release number is incremented when the software or ancillary data used to create the granule has been changed.
[1 values with dtype=<U80]
start_cycle
(phony_dim_25)
int32
...
long_name :
Starting Cycle
units :
1
source :
Derived
valid_min :
0
valid_max :
99
contentType :
auxiliaryInformation
description :
The starting cycle number associated with the data contained within this granule. The cycle number is the counter of the number of 91-day repeat cycles completed by the mission.
[1 values with dtype=int32]
start_delta_time
(phony_dim_25)
datetime64[ns]
...
long_name :
ATLAS Start Time (Actual)
standard_name :
time
source :
Derived
contentType :
auxiliaryInformation
description :
Number of GPS seconds since the ATLAS SDP epoch at the first data point in the file. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
[1 values with dtype=datetime64[ns]]
start_geoseg
(phony_dim_25)
int32
...
long_name :
Starting Geolocation Segment
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
The starting geolocation segment number associated with the data contained within this granule. ICESat granule geographic regions are further refined by geolocation segments. During the geolocation process, a geolocation segment is created approximately every 20m from the start of the orbit to the end. The geolocation segments help align the ATLAS strong a weak beams and provide a common segment length for the L2 and higher products. The geolocation segment indices differ slightly from orbit-to-orbit because of the irregular shape of the Earth. The geolocation segment indices on ATL01 and ATL02 are only approximate because beams have not been aligned at the time of their creation.
[1 values with dtype=int32]
start_gpssow
(phony_dim_25)
timedelta64[ns]
...
long_name :
Start GPS SOW of Granule (Actual)
source :
Derived
contentType :
auxiliaryInformation
description :
GPS seconds-of-week of the first data point in the granule.
[1 values with dtype=timedelta64[ns]]
start_gpsweek
(phony_dim_25)
int32
...
long_name :
Start GPSWeek of Granule (Actual)
units :
weeks from 1980-01-06
source :
Derived
contentType :
auxiliaryInformation
description :
GPS week number of the first data point in the granule.
[1 values with dtype=int32]
start_orbit
(phony_dim_25)
int32
...
long_name :
Starting Orbit Number
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
The starting orbit number associated with the data contained within this granule. The orbit number increments each time the spacecraft completes a full orbit of the Earth.
[1 values with dtype=int32]
start_region
(phony_dim_25)
int32
...
long_name :
Starting Region
units :
1
source :
Derived
contentType :
auxiliaryInformation
description :
The starting product-specific region number associated with the data contained within this granule. ICESat-2 data products are separated by geographic regions. The data contained within a specific region are the same for ATL01 and ATL02. ATL03 regions differ slightly because of different geolocation segment locations caused by the irregular shape of the Earth. The region indices for other products are completely independent.
[1 values with dtype=int32]
start_rgt
(phony_dim_25)
int32
...
long_name :
Starting Reference Groundtrack
units :
1
source :
Derived
valid_min :
1
valid_max :
1387
contentType :
auxiliaryInformation
description :
The starting reference groundtrack (RGT) number associated with the data contained within this granule. There are 1387 reference groundtrack in the ICESat-2 repeat orbit. The reference groundtrack increments each time the spacecraft completes a full orbit of the Earth and resets to 1 each time the spacecraft completes a full cycle.
[1 values with dtype=int32]
version
(phony_dim_25)
<U80
...
long_name :
Version
units :
1
source :
Operations
contentType :
auxiliaryInformation
description :
Version number of this granule within the release. It is a sequential number corresponding to the number of times the granule has been reprocessed for the current release.
[1 values with dtype=<U80]
Description :
Contains information ancillary to the data product. This may include product characteristics, instrument characteristics and/or processing constants.
The time, in seconds since the ATLAS SDP GPS Epoch, at which the ascending node crosses the equator. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
The time of the last spacecraft orientation change between forward, backward and transitional flight modes, expressed in seconds since the ATLAS SDP GPS Epoch. ICESat-2 is considered to be flying forward when the weak beams are leading the strong beams; and backward when the strong beams are leading the weak beams. ICESat-2 is considered to be in transition while it is maneuvering between the two orientations. Science quality is potentially degraded while in transition mode. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
A count of the number of exact repeats of this reference orbit.
[1 values with dtype=int8]
lan
(crossing_time)
float64
...
long_name :
Ascending Node Longitude
units :
degrees_east
source :
POD/PPD
valid_min :
-180.0
valid_max :
180.0
contentType :
referenceInformation
description :
Longitude at the ascending node crossing.
[1 values with dtype=float64]
orbit_number
(crossing_time)
uint16
...
long_name :
Orbit Number
units :
1
source :
Operations
valid_min :
1
valid_max :
65000
contentType :
referenceInformation
description :
Unique identifying number for each planned ICESat-2 orbit.
[1 values with dtype=uint16]
rgt
(crossing_time)
int16
...
long_name :
Reference Ground track
units :
1
source :
POD/PPD
valid_min :
1
valid_max :
1387
contentType :
referenceInformation
description :
The reference ground track (RGT) is the track on the earth at which a specified unit vector within the observatory is pointed. Under nominal operating conditions, there will be no data collected along the RGT, as the RGT is spanned by GT3 and GT4. During slews or off-pointing, it is possible that ground tracks may intersect the RGT. The ICESat-2 mission has 1387 RGTs.
[1 values with dtype=int16]
sc_orient
(sc_orient_time)
int8
...
long_name :
Spacecraft Orientation
units :
1
source :
POD/PPD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
This parameter tracks the spacecraft orientation between forward, backward and transitional flight modes. ICESat-2 is considered to be flying forward when the weak beams are leading the strong beams; and backward when the strong beams are leading the weak beams. ICESat-2 is considered to be in transition while it is maneuvering between the two orientations. Science quality is potentially degraded while in transition mode.
flag_meanings :
backward forward transition
flag_values :
[0 1 2]
[1 values with dtype=int8]
Description :
Contains orbit information.
data_rate :
Varies. Data are only provided when one of the stored values (besides time) changes.
The direction, eastwards from north, of the laser beam vector as seen by an observer at the laser ground spot viewing toward the spacecraft (i.e., the vector from the ground to the spacecraft). When the spacecraft is precisely at the geodetic zenith, the value will be 99999 degrees.
[100614 values with dtype=float32]
beam_coelev
(delta_time)
float32
...
long_name :
beam co-elevation
units :
radians
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Co-elevation (CE) is direction from the plane of the laser beam as seen by an observer located at the laser ground spot.
[100614 values with dtype=float32]
height_segment_podppd_flag
(delta_time)
float32
...
long_name :
POD_PPD Flag
units :
1
source :
ATL02, ANC04, ANC05, ATL03
valid_min :
0
valid_max :
7
contentType :
referenceInformation
description :
Composite POD/PPD flag from ATL03 that indicates the quality of input geolocation products. Value is set as the highest podppd_flag value from ATL03 associated with this segment. A non-zero value may indicate that geolocation solutions are degraded or that ATLAS is within a calibration scan period (CAL). Possible non-CAL values are: 0=NOMINAL; 1=POD_DEGRADE; 2=PPD_DEGRADE; 3=PODPPD_DEGRADE; possible CAL values are: 4=CAL_NOMINAL; 5=CAL_POD_DEGRADE; 6=CAL_PPD_DEGRADE; 7=CAL_PODPPD_DEGRADE.
[100614 values with dtype=float32]
rgt
(delta_time)
int16
...
long_name :
Reference Ground track
units :
1
source :
Sea Ice ATBD
valid_min :
1
valid_max :
1387
contentType :
referenceInformation
description :
The reference ground track (RGT) is the track on the earth at which a specified unit vector within the observatory is pointed. Under nominal operating conditions, there will be no data collected along the RGT, as the RGT is spanned by GT3 and GT4. During slews or off-pointing, it is possible that ground tracks may intersect the RGT. The ICESat-2 mission has 1387 RGTs.
[100614 values with dtype=int16]
sigma_h
(delta_time)
float32
...
long_name :
height uncertainty
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point ellipsoid height: 1- sigma (m). Error estimates for all other photons in the group are computed with the scale defined below.
[100614 values with dtype=float32]
sigma_lat
(delta_time)
float32
...
long_name :
latitude uncertainty
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point geodetic latitude: 1- sigma (degrees). Applies to all other photons in the group
[100614 values with dtype=float32]
sigma_lon
(delta_time)
float32
...
long_name :
longitude uncertainty
units :
degrees
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point east longitude: 1- sigma (degrees). Applies to all other photons in the group.
[100614 values with dtype=float32]
solar_azimuth
(delta_time)
float32
...
long_name :
solar azimuth
units :
degrees_east
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
The direction, eastwards from north, of the sun vector as seen by an observer at the laser ground spot.
[100614 values with dtype=float32]
solar_elevation
(delta_time)
float32
...
long_name :
solar elevation
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Solar Angle above or below the plane tangent to the ellipsoid surface at the laser spot. Positive values mean the sun is above the horizon, while negative values mean it is below the horizon. The effect of atmospheric refraction is not included. This is a low precision value, with approximately TBD degree accuracy.
units :
degrees
[100614 values with dtype=float32]
Description :
Contains parameters related to geolocation.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Dynamic Atmospheric Correction (DAC) includes inverted barometer (IB) effect.
[100614 values with dtype=float32]
height_segment_dynib
(delta_time)
float32
...
long_name :
Dynamic inverted barometer effect
standard_name :
dynamic inverted baromter
units :
meters
source :
ATBD, section 4.2
contentType :
referenceInformation
description :
Inverted barometer effect calculated from dynamic mean ocean sea level pressure (computed using ANC10 and ANC48, /ancillary_data/sea_ice/mean_ocean_slp)
[100614 values with dtype=float32]
height_segment_earth
(delta_time)
float32
...
units :
meters
long_name :
Earth Tide
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Solid Earth Tide. The solid earth tide height is in the tide-free system.
[100614 values with dtype=float32]
height_segment_earth_free2mean
(delta_time)
float32
...
long_name :
Earth Tide Free-to-Mean conversion
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Additive value to convert solid earth tide from the tide-free system to the mean-tide system. (Add to height_segment_eath to get the solid earth tides in the mean-tide system.)
[100614 values with dtype=float32]
height_segment_geoid
(delta_time)
float32
...
units :
meters
long_name :
EGM2008 Geoid
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Geoid height above WGS-84 reference ellipsoid (range -107 to 86m), based on the EGM2008 model. The geoid height is in the tide-free system.
[100614 values with dtype=float32]
height_segment_geoid_free2mean
(delta_time)
float32
...
long_name :
EGM2008 Geoid Free-to-Mean conversion
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Additive value to convert geoid heights from the tide-free system to the mean-tide system. (Add to height_segment_geoid to get the geoid heights in the mean-tide system.)
[100614 values with dtype=float32]
height_segment_ib
(delta_time)
float32
...
long_name :
Inverted barometer effect
units :
meters
source :
ATBD, section 4.2
contentType :
referenceInformation
description :
Inverted barometer effect calculated from surface pressure
[100614 values with dtype=float32]
height_segment_load
(delta_time)
float32
...
long_name :
Load Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Load Tide - Local displacement due to Ocean Loading (-6 to 0 cm).
[100614 values with dtype=float32]
height_segment_lpe
(delta_time)
float32
...
units :
meters
long_name :
Equilibrium Tide
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Long period equilibrium tide self-consistent with ocean tide model (+-0.04m). (dependent only on time and latitude)
[100614 values with dtype=float32]
height_segment_mss
(delta_time)
float32
...
long_name :
CryoSat-2/DTU13 Mean Sea Surface (tide free)
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean sea surface height above WGS-84 reference ellipsoid (range: -68 to 65m), based on a CryoSat-2/DTU13 merged product (https://doi.org/10.5281/zenodo.4294047). The MSS height (from ANC15) is adjusted to be in a tide free reference system (subtracting the geoid_free2mean correction) to be consistent with the tide free ATL03 heights.
[100614 values with dtype=float32]
height_segment_mss_interp_flag
(delta_time)
float64
...
long_name :
MSS interpolation flag
standard_name :
mss_interp_flag
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
Flag marking where MSS has been interpolated
flag_meanings :
no_interpolation interpolation extrapolation
flag_values :
[0 1 2]
[100614 values with dtype=float64]
height_segment_ocean
(delta_time)
float32
...
long_name :
Ocean Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Ocean Tides including diurnal and semi-diurnal (harmonic analysis), and longer period tides (dynamic and self-consistent equilibrium)
[100614 values with dtype=float32]
height_segment_pole
(delta_time)
float32
...
long_name :
Pole Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Pole Tide -Rotational deformation due to polar motion (-1.5 to 1.5 cm).
[100614 values with dtype=float32]
height_segment_ps
(delta_time)
float32
...
long_name :
sea level pressure
standard_name :
pressure
units :
Pa
source :
ATL09
contentType :
referenceInformation
description :
Sea Level Pressure (Pa)
[100614 values with dtype=float32]
height_segment_t2m
(delta_time)
float32
...
long_name :
temperature_at_2m
standard_name :
temperature
units :
K
source :
ATL09
contentType :
referenceInformation
description :
Temperature at 2m above the displacement height (K)
[100614 values with dtype=float32]
height_segment_tide_interp_flag
(delta_time)
float64
...
long_name :
tide interpolation flag
standard_name :
tide_interp_flag
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
Flag marking where ocean tide and LPE tide has been interpolated
flag_meanings :
no_interpolation interpolation extrapolation
flag_values :
[0 1 2]
[100614 values with dtype=float64]
height_segment_u2m
(delta_time)
float32
...
long_name :
Eastward_wind_at_2m
standard_name :
eastward_wind
units :
m s-1
source :
ATL09
contentType :
referenceInformation
description :
Eastward wind at 2m above the displacement height (m/s-1)
[100614 values with dtype=float32]
height_segment_v2m
(delta_time)
float32
...
long_name :
Northward_wind_at_2m
standard_name :
northward_wind
units :
m s-1
source :
ATL09
contentType :
referenceInformation
description :
Northward wind at 2m above the displacement height (m/s-1)
[100614 values with dtype=float32]
Description :
Contains geophysical parameters and corrections used to correct photon heights for geophysical effects, such as tides.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Across track distance of photons averaged over the sea ice height segment.
[100614 values with dtype=float32]
height_segment_asr_calc
(delta_time)
float32
...
long_name :
Calculated Apparent Surface Reflectivity
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Computed apparent surface reflectance for the sea ice segment.
[100614 values with dtype=float32]
height_segment_confidence
(delta_time)
float32
...
long_name :
Surface height confidence
units :
1
source :
ATBD, section 4.2.4.2
contentType :
referenceInformation
description :
Confidence level in the surface height estimate based on analysis of the error surface, defined as the mean-square difference between the height distribution and expected return (computed waveform table). The height_segment_confidence is computed as ( min(error_surf) - mean(error_surf) ).
[100614 values with dtype=float32]
height_segment_contrast_ratio
(delta_time)
float32
...
long_name :
ratio of maximum photon rate to segment photon rate
standard_name :
contrast_ratio
units :
1
source :
ATBD
contentType :
referenceInformation
description :
Ratio of maximum segment photon rate within an along-track distance of +/- contrast_length_scale to the photon rate of the current segment.
[100614 values with dtype=float32]
height_segment_fit_quality_flag
(delta_time)
float32
...
long_name :
height Quality Flag
units :
1
source :
ATBD, section 4.2.4.2
valid_min :
-1
valid_max :
5
contentType :
referenceInformation
description :
Flag describing the quality of the results of the along-track fit. (-1=height value is invalid; 1=ngrid_w < wlength/2; 2=ngrid_w >= wlength/2; 3=ngrid_dt < dtlength/2; 4=ngrid_dt >= dtlength/2; 5=ngrid_dt >= (dtlength-2): where 1 is best and 5 is poor). Heights are reported even if this flag indicates the height is invalid.
flag_meanings :
invalid best high med low poor
flag_values :
[-1 1 2 3 4 5]
[100614 values with dtype=float32]
height_segment_height
(delta_time)
float32
...
long_name :
height of segment surface
standard_name :
h_surf
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Mean height from along-track segment fit determined by the sea ice algorithm. Ocean tides and inverted barometer corrections are also applied (see Appendix J of ATBD). The sea ice height is relative to the tide-free MSS.
[100614 values with dtype=float32]
height_segment_height_uncorr
(delta_time)
float32
...
long_name :
height of segment with no additional geophysical corrections applied in ATL07
standard_name :
h_surf_uncorr
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Mean segment height with no additional geophysical corrections applied in ATL07 (see Appendix J of ATBD).
[100614 values with dtype=float32]
height_segment_htcorr_skew
(delta_time)
float32
...
long_name :
Height Correction for Skew
units :
meters
source :
ATBD, section 4.2.6
contentType :
referenceInformation
description :
height corection for skew
[100614 values with dtype=float32]
height_segment_length_seg
(delta_time)
float32
...
long_name :
length of segment
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
along-track length of segment containing n_photons_actual
[100614 values with dtype=float32]
height_segment_n_pulse_seg
(delta_time)
int32
...
long_name :
number of laser pulses
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
number of laser pulses spanned to gather photons in sea ice segment, including specular returns.
[100614 values with dtype=int32]
height_segment_n_pulse_seg_used
(delta_time)
int32
...
long_name :
number of laser pulses used
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
number of laser pulses used in processing sea ice segment, excluding specular returns. Computed as number of laser pulses spanned (height_segment_n_pulse_seg) - number of specular shots excluded.
[100614 values with dtype=int32]
height_segment_quality
(delta_time)
int8
...
long_name :
Height Segment Quality Flag
units :
1
source :
ATBD, section 4.2.4
valid_min :
0
valid_max :
1
contentType :
referenceInformation
description :
Height segment quality flag, 1 is good quality, 0 is bad depending on fit, wguassian, or layer flag
flag_meanings :
bad_quality good_quality
flag_values :
[0 1]
[100614 values with dtype=int8]
height_segment_rms
(delta_time)
float32
...
long_name :
height rms
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
RMS difference between sea ice modeled and observed photon height distribution
[100614 values with dtype=float32]
height_segment_ssh_flag
(delta_time)
int8
...
long_name :
Sea Surface Flag
units :
1
source :
ATBD, section 4.3
valid_min :
0
valid_max :
1
contentType :
referenceInformation
description :
Identifies the height segments that are candidates for use as sea surface reference in freeboard calculations in ATL10. 0 = sea ice; 1 = sea surface
flag_meanings :
sea_ice sea_surface
flag_values :
[0 1]
[100614 values with dtype=int8]
height_segment_surface_error_est
(delta_time)
float32
...
long_name :
h surface error est
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Error estimate of the surface height
[100614 values with dtype=float32]
height_segment_type
(delta_time)
int8
...
long_name :
Segment surface type
units :
1
source :
ATBD, section 4.3
valid_min :
-1
valid_max :
9
contentType :
referenceInformation
description :
Value that indicates segment surface type as sea ice or different types of sea surface.
Contains parameters relating to the calculated surface height for one Ground Track. As ICESat-2 orbits the earth, sequential transmit pulses illuminate six ground tracks on the surface of the earth.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Dimension scale indexing the sea ice histogram bins. The bin heights must be computed from information contained within the same group as the histogram.
Dimension scale indexing the YAPC histogram bins. The histogram contains YAPC weight counts within 6 log-scale bins.
array([1, 2, 3, 4, 5, 6], dtype=int32)
asr_25
(delta_time)
float32
...
long_name :
Apparent Surface Reflectance 25hz
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Apparent surface reflectance at 25 hz, averaged to the sea ice segment.
[100614 values with dtype=float32]
backgr_calc
(delta_time)
float32
...
long_name :
background count rate calculated
units :
hz
source :
ATBD, section 4.2.3
contentType :
referenceInformation
description :
Calculated background count rate based on sun angle, surface slope, unit reflectance
[100614 values with dtype=float32]
backgr_r_200
(delta_time)
float32
...
long_name :
Background rate 200 hz
units :
hz
source :
ATL09
contentType :
referenceInformation
description :
Background count rate, averaged over the segment based on ATLAS 50 pulse counts
[100614 values with dtype=float32]
backgr_r_25
(delta_time)
float32
...
long_name :
Background rate 25hz
units :
hz
source :
ATL09
contentType :
referenceInformation
description :
Background count rate, averaged over the segment based on 25 hz atmosphere
[100614 values with dtype=float32]
background_int_height
(delta_time)
float32
...
long_name :
Height of column used in background calculation
units :
meters
source :
ATBD, section 7.3
contentType :
referenceInformation
description :
The height of the altimetric range window after subtracting the height span of the signal photon events in the 50-shot span
[100614 values with dtype=float32]
background_r_norm
(delta_time)
float32
...
long_name :
Normalized background (50-shot)
units :
hz
source :
ATBD section 4.3.1.3
contentType :
referenceInformation
description :
Background rate normalized to a fixed solar elevation angle
[100614 values with dtype=float32]
bsnow_con
(delta_time)
float32
...
long_name :
Blowing snow confidence
units :
1
source :
ATL09
contentType :
modelResult
description :
Blowing snow confidence
[100614 values with dtype=float32]
bsnow_h
(delta_time)
float32
...
long_name :
Blowing snow top h
units :
meters
source :
ATL09
contentType :
modelResult
description :
Blowing snow layer top height
[100614 values with dtype=float32]
cloud_flag_asr
(delta_time)
float32
...
units :
1
source :
Atmosphere ATBD
long_name :
Cloud Flag ASR
valid_min :
0
valid_max :
6
contentType :
modelResult
description :
Cloud flag (probability) from apparent surface reflectance. 0=clear with high confidence; 1=clear with medium confidence; 2=clear with low confidence; 3=cloudy with low confidence; 4=cloudy with medium confidence; 5=cloudy with high confidence; 6=unknown
This flag is a combination of multiple flags (cloud_flag_atm, cloud_flag_asr, and bsnow_con) and takes daytime/nighttime into consideration. A value of 1 means clouds or blowing snow are likely present. A value of 0 indicates the likely absence of clouds or blowing snow.
flag_meanings :
likely_clear likely_cloudy
flag_values :
[0 1]
[100614 values with dtype=float32]
msw_flag
(delta_time)
float32
...
long_name :
Multiple Scattering Warning Flag
units :
1
source :
Atmosphere ATBD
valid_min :
-1
valid_max :
5
contentType :
modelResult
description :
Multiple Scattering warning flag. The multiple scattering warning flag (ATL09 parameter msw_flag) has values from -1 to 5 where zero means no multiple scattering and 5 the greatest. If no layers were detected, then msw_flag = 0. If blowing snow is detected and its estimated optical depth is greater than or equal to 0.5, then msw_flag = 5. If the blowing snow optical depth is less than 0.5, then msw_flag = 4. If no blowing snow is detected but there are cloud or aerosol layers detected, the msw_flag assumes values of 1 to 3 based on the height of the bottom of the lowest layer: < 1 km, msw_flag = 3; 1-3 km, msw_flag = 2; > 3km, msw_flag = 1. A value of -1 indicates that the signal to noise of the data was too low to reliably ascertain the presence of cloud or blowing snow. We expect values of -1 to occur only during daylight.
Ocean depth (anc43). Note, negative value corresponds to ocean depth, positive value corresponds to above sea level.
[100614 values with dtype=float32]
photon_rate
(delta_time)
float32
...
long_name :
photon rate
units :
photons/shot
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Photon rate averaged over sea ice segment. Computed by dividing the number of photons in trimmed histogram (n_photons_used) by the number of used shots (height_segment_n_pulse_seg_used).
[100614 values with dtype=float32]
trim_height_bottom
(delta_time)
float32
...
long_name :
minimum height of trimmed photons
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
minimum height of trimmed photons used in the surface calculation procedure
[100614 values with dtype=float32]
trim_height_top
(delta_time)
float32
...
long_name :
maximum height of trimmed photons
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
maximum height of trimmed photons used in the surface calculation procedure
[100614 values with dtype=float32]
yapc_knn_mean
(delta_time)
float32
...
long_name :
mean YAPC KNN value
standard_name :
yapc_knn_mean
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC KNN value from ATL03 gooses used in the ATL07 segment
[100614 values with dtype=float32]
yapc_weight_ph_cts_n
(delta_time, ds_yapc_hist_bins)
int16
...
long_name :
YAPC photon weights histogram
standard_name :
yapc_weight_ph_cts_n
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
YAPC weight counts within 6 log-scale bins using all aggregated photons (bin1: 0-56, bin2: 57-133, bin3: 134-178, bin4: 179-210, bin5: 211-234, bin6: 235-255)
[603684 values with dtype=int16]
yapc_weight_ph_mean_actual
(delta_time)
float32
...
long_name :
mean YAPC weight from all aggregrated photons
standard_name :
yapc_weight_ph_mean_actual
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC weights from all photons aggregated within the ATL07 segment (pre-trimmed)
[100614 values with dtype=float32]
yapc_weight_ph_mean_used
(delta_time)
float32
...
long_name :
mean YAPC weight from trimmed photons
standard_name :
yapc_weight_ph_mean_used
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC weights from trimmed photons within the ATL07 segment (post-trimmed)
[100614 values with dtype=float32]
Description :
Contains parameters related to quality and corrections on the sea ice height paramters
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
delta_time: 100614
delta_time
(delta_time)
datetime64[ns]
2022-07-26T16:28:36.667153152 .....
long_name :
Elapsed GPS seconds
standard_name :
time
source :
telemetry
contentType :
physicalMeasurement
description :
Number of GPS seconds since the ATLAS SDP epoch. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
The direction, eastwards from north, of the laser beam vector as seen by an observer at the laser ground spot viewing toward the spacecraft (i.e., the vector from the ground to the spacecraft). When the spacecraft is precisely at the geodetic zenith, the value will be 99999 degrees.
[84156 values with dtype=float32]
beam_coelev
(delta_time)
float32
...
long_name :
beam co-elevation
units :
radians
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Co-elevation (CE) is direction from the plane of the laser beam as seen by an observer located at the laser ground spot.
[84156 values with dtype=float32]
height_segment_podppd_flag
(delta_time)
float32
...
long_name :
POD_PPD Flag
units :
1
source :
ATL02, ANC04, ANC05, ATL03
valid_min :
0
valid_max :
7
contentType :
referenceInformation
description :
Composite POD/PPD flag from ATL03 that indicates the quality of input geolocation products. Value is set as the highest podppd_flag value from ATL03 associated with this segment. A non-zero value may indicate that geolocation solutions are degraded or that ATLAS is within a calibration scan period (CAL). Possible non-CAL values are: 0=NOMINAL; 1=POD_DEGRADE; 2=PPD_DEGRADE; 3=PODPPD_DEGRADE; possible CAL values are: 4=CAL_NOMINAL; 5=CAL_POD_DEGRADE; 6=CAL_PPD_DEGRADE; 7=CAL_PODPPD_DEGRADE.
[84156 values with dtype=float32]
rgt
(delta_time)
int16
...
long_name :
Reference Ground track
units :
1
source :
Sea Ice ATBD
valid_min :
1
valid_max :
1387
contentType :
referenceInformation
description :
The reference ground track (RGT) is the track on the earth at which a specified unit vector within the observatory is pointed. Under nominal operating conditions, there will be no data collected along the RGT, as the RGT is spanned by GT3 and GT4. During slews or off-pointing, it is possible that ground tracks may intersect the RGT. The ICESat-2 mission has 1387 RGTs.
[84156 values with dtype=int16]
sigma_h
(delta_time)
float32
...
long_name :
height uncertainty
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point ellipsoid height: 1- sigma (m). Error estimates for all other photons in the group are computed with the scale defined below.
[84156 values with dtype=float32]
sigma_lat
(delta_time)
float32
...
long_name :
latitude uncertainty
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point geodetic latitude: 1- sigma (degrees). Applies to all other photons in the group
[84156 values with dtype=float32]
sigma_lon
(delta_time)
float32
...
long_name :
longitude uncertainty
units :
degrees
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point east longitude: 1- sigma (degrees). Applies to all other photons in the group.
[84156 values with dtype=float32]
solar_azimuth
(delta_time)
float32
...
long_name :
solar azimuth
units :
degrees_east
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
The direction, eastwards from north, of the sun vector as seen by an observer at the laser ground spot.
[84156 values with dtype=float32]
solar_elevation
(delta_time)
float32
...
long_name :
solar elevation
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Solar Angle above or below the plane tangent to the ellipsoid surface at the laser spot. Positive values mean the sun is above the horizon, while negative values mean it is below the horizon. The effect of atmospheric refraction is not included. This is a low precision value, with approximately TBD degree accuracy.
units :
degrees
[84156 values with dtype=float32]
Description :
Contains parameters related to geolocation.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Dynamic Atmospheric Correction (DAC) includes inverted barometer (IB) effect.
[84156 values with dtype=float32]
height_segment_dynib
(delta_time)
float32
...
long_name :
Dynamic inverted barometer effect
standard_name :
dynamic inverted baromter
units :
meters
source :
ATBD, section 4.2
contentType :
referenceInformation
description :
Inverted barometer effect calculated from dynamic mean ocean sea level pressure (computed using ANC10 and ANC48, /ancillary_data/sea_ice/mean_ocean_slp)
[84156 values with dtype=float32]
height_segment_earth
(delta_time)
float32
...
units :
meters
long_name :
Earth Tide
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Solid Earth Tide. The solid earth tide height is in the tide-free system.
[84156 values with dtype=float32]
height_segment_earth_free2mean
(delta_time)
float32
...
long_name :
Earth Tide Free-to-Mean conversion
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Additive value to convert solid earth tide from the tide-free system to the mean-tide system. (Add to height_segment_eath to get the solid earth tides in the mean-tide system.)
[84156 values with dtype=float32]
height_segment_geoid
(delta_time)
float32
...
units :
meters
long_name :
EGM2008 Geoid
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Geoid height above WGS-84 reference ellipsoid (range -107 to 86m), based on the EGM2008 model. The geoid height is in the tide-free system.
[84156 values with dtype=float32]
height_segment_geoid_free2mean
(delta_time)
float32
...
long_name :
EGM2008 Geoid Free-to-Mean conversion
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Additive value to convert geoid heights from the tide-free system to the mean-tide system. (Add to height_segment_geoid to get the geoid heights in the mean-tide system.)
[84156 values with dtype=float32]
height_segment_ib
(delta_time)
float32
...
long_name :
Inverted barometer effect
units :
meters
source :
ATBD, section 4.2
contentType :
referenceInformation
description :
Inverted barometer effect calculated from surface pressure
[84156 values with dtype=float32]
height_segment_load
(delta_time)
float32
...
long_name :
Load Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Load Tide - Local displacement due to Ocean Loading (-6 to 0 cm).
[84156 values with dtype=float32]
height_segment_lpe
(delta_time)
float32
...
units :
meters
long_name :
Equilibrium Tide
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Long period equilibrium tide self-consistent with ocean tide model (+-0.04m). (dependent only on time and latitude)
[84156 values with dtype=float32]
height_segment_mss
(delta_time)
float32
...
long_name :
CryoSat-2/DTU13 Mean Sea Surface (tide free)
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean sea surface height above WGS-84 reference ellipsoid (range: -68 to 65m), based on a CryoSat-2/DTU13 merged product (https://doi.org/10.5281/zenodo.4294047). The MSS height (from ANC15) is adjusted to be in a tide free reference system (subtracting the geoid_free2mean correction) to be consistent with the tide free ATL03 heights.
[84156 values with dtype=float32]
height_segment_mss_interp_flag
(delta_time)
float64
...
long_name :
MSS interpolation flag
standard_name :
mss_interp_flag
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
Flag marking where MSS has been interpolated
flag_meanings :
no_interpolation interpolation extrapolation
flag_values :
[0 1 2]
[84156 values with dtype=float64]
height_segment_ocean
(delta_time)
float32
...
long_name :
Ocean Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Ocean Tides including diurnal and semi-diurnal (harmonic analysis), and longer period tides (dynamic and self-consistent equilibrium)
[84156 values with dtype=float32]
height_segment_pole
(delta_time)
float32
...
long_name :
Pole Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Pole Tide -Rotational deformation due to polar motion (-1.5 to 1.5 cm).
[84156 values with dtype=float32]
height_segment_ps
(delta_time)
float32
...
long_name :
sea level pressure
standard_name :
pressure
units :
Pa
source :
ATL09
contentType :
referenceInformation
description :
Sea Level Pressure (Pa)
[84156 values with dtype=float32]
height_segment_t2m
(delta_time)
float32
...
long_name :
temperature_at_2m
standard_name :
temperature
units :
K
source :
ATL09
contentType :
referenceInformation
description :
Temperature at 2m above the displacement height (K)
[84156 values with dtype=float32]
height_segment_tide_interp_flag
(delta_time)
float64
...
long_name :
tide interpolation flag
standard_name :
tide_interp_flag
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
Flag marking where ocean tide and LPE tide has been interpolated
flag_meanings :
no_interpolation interpolation extrapolation
flag_values :
[0 1 2]
[84156 values with dtype=float64]
height_segment_u2m
(delta_time)
float32
...
long_name :
Eastward_wind_at_2m
standard_name :
eastward_wind
units :
m s-1
source :
ATL09
contentType :
referenceInformation
description :
Eastward wind at 2m above the displacement height (m/s-1)
[84156 values with dtype=float32]
height_segment_v2m
(delta_time)
float32
...
long_name :
Northward_wind_at_2m
standard_name :
northward_wind
units :
m s-1
source :
ATL09
contentType :
referenceInformation
description :
Northward wind at 2m above the displacement height (m/s-1)
[84156 values with dtype=float32]
Description :
Contains geophysical parameters and corrections used to correct photon heights for geophysical effects, such as tides.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Across track distance of photons averaged over the sea ice height segment.
[84156 values with dtype=float32]
height_segment_asr_calc
(delta_time)
float32
...
long_name :
Calculated Apparent Surface Reflectivity
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Computed apparent surface reflectance for the sea ice segment.
[84156 values with dtype=float32]
height_segment_confidence
(delta_time)
float32
...
long_name :
Surface height confidence
units :
1
source :
ATBD, section 4.2.4.2
contentType :
referenceInformation
description :
Confidence level in the surface height estimate based on analysis of the error surface, defined as the mean-square difference between the height distribution and expected return (computed waveform table). The height_segment_confidence is computed as ( min(error_surf) - mean(error_surf) ).
[84156 values with dtype=float32]
height_segment_contrast_ratio
(delta_time)
float32
...
long_name :
ratio of maximum photon rate to segment photon rate
standard_name :
contrast_ratio
units :
1
source :
ATBD
contentType :
referenceInformation
description :
Ratio of maximum segment photon rate within an along-track distance of +/- contrast_length_scale to the photon rate of the current segment.
[84156 values with dtype=float32]
height_segment_fit_quality_flag
(delta_time)
float32
...
long_name :
height Quality Flag
units :
1
source :
ATBD, section 4.2.4.2
valid_min :
-1
valid_max :
5
contentType :
referenceInformation
description :
Flag describing the quality of the results of the along-track fit. (-1=height value is invalid; 1=ngrid_w < wlength/2; 2=ngrid_w >= wlength/2; 3=ngrid_dt < dtlength/2; 4=ngrid_dt >= dtlength/2; 5=ngrid_dt >= (dtlength-2): where 1 is best and 5 is poor). Heights are reported even if this flag indicates the height is invalid.
flag_meanings :
invalid best high med low poor
flag_values :
[-1 1 2 3 4 5]
[84156 values with dtype=float32]
height_segment_height
(delta_time)
float32
...
long_name :
height of segment surface
standard_name :
h_surf
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Mean height from along-track segment fit determined by the sea ice algorithm. Ocean tides and inverted barometer corrections are also applied (see Appendix J of ATBD). The sea ice height is relative to the tide-free MSS.
[84156 values with dtype=float32]
height_segment_height_uncorr
(delta_time)
float32
...
long_name :
height of segment with no additional geophysical corrections applied in ATL07
standard_name :
h_surf_uncorr
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Mean segment height with no additional geophysical corrections applied in ATL07 (see Appendix J of ATBD).
[84156 values with dtype=float32]
height_segment_htcorr_skew
(delta_time)
float32
...
long_name :
Height Correction for Skew
units :
meters
source :
ATBD, section 4.2.6
contentType :
referenceInformation
description :
height corection for skew
[84156 values with dtype=float32]
height_segment_length_seg
(delta_time)
float32
...
long_name :
length of segment
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
along-track length of segment containing n_photons_actual
[84156 values with dtype=float32]
height_segment_n_pulse_seg
(delta_time)
int32
...
long_name :
number of laser pulses
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
number of laser pulses spanned to gather photons in sea ice segment, including specular returns.
[84156 values with dtype=int32]
height_segment_n_pulse_seg_used
(delta_time)
int32
...
long_name :
number of laser pulses used
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
number of laser pulses used in processing sea ice segment, excluding specular returns. Computed as number of laser pulses spanned (height_segment_n_pulse_seg) - number of specular shots excluded.
[84156 values with dtype=int32]
height_segment_quality
(delta_time)
int8
...
long_name :
Height Segment Quality Flag
units :
1
source :
ATBD, section 4.2.4
valid_min :
0
valid_max :
1
contentType :
referenceInformation
description :
Height segment quality flag, 1 is good quality, 0 is bad depending on fit, wguassian, or layer flag
flag_meanings :
bad_quality good_quality
flag_values :
[0 1]
[84156 values with dtype=int8]
height_segment_rms
(delta_time)
float32
...
long_name :
height rms
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
RMS difference between sea ice modeled and observed photon height distribution
[84156 values with dtype=float32]
height_segment_ssh_flag
(delta_time)
int8
...
long_name :
Sea Surface Flag
units :
1
source :
ATBD, section 4.3
valid_min :
0
valid_max :
1
contentType :
referenceInformation
description :
Identifies the height segments that are candidates for use as sea surface reference in freeboard calculations in ATL10. 0 = sea ice; 1 = sea surface
flag_meanings :
sea_ice sea_surface
flag_values :
[0 1]
[84156 values with dtype=int8]
height_segment_surface_error_est
(delta_time)
float32
...
long_name :
h surface error est
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Error estimate of the surface height
[84156 values with dtype=float32]
height_segment_type
(delta_time)
int8
...
long_name :
Segment surface type
units :
1
source :
ATBD, section 4.3
valid_min :
-1
valid_max :
9
contentType :
referenceInformation
description :
Value that indicates segment surface type as sea ice or different types of sea surface.
Contains parameters relating to the calculated surface height for one Ground Track. As ICESat-2 orbits the earth, sequential transmit pulses illuminate six ground tracks on the surface of the earth.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Dimension scale indexing the sea ice histogram bins. The bin heights must be computed from information contained within the same group as the histogram.
Dimension scale indexing the YAPC histogram bins. The histogram contains YAPC weight counts within 6 log-scale bins.
array([1, 2, 3, 4, 5, 6], dtype=int32)
asr_25
(delta_time)
float32
...
long_name :
Apparent Surface Reflectance 25hz
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Apparent surface reflectance at 25 hz, averaged to the sea ice segment.
[84156 values with dtype=float32]
backgr_calc
(delta_time)
float32
...
long_name :
background count rate calculated
units :
hz
source :
ATBD, section 4.2.3
contentType :
referenceInformation
description :
Calculated background count rate based on sun angle, surface slope, unit reflectance
[84156 values with dtype=float32]
backgr_r_200
(delta_time)
float32
...
long_name :
Background rate 200 hz
units :
hz
source :
ATL09
contentType :
referenceInformation
description :
Background count rate, averaged over the segment based on ATLAS 50 pulse counts
[84156 values with dtype=float32]
backgr_r_25
(delta_time)
float32
...
long_name :
Background rate 25hz
units :
hz
source :
ATL09
contentType :
referenceInformation
description :
Background count rate, averaged over the segment based on 25 hz atmosphere
[84156 values with dtype=float32]
background_int_height
(delta_time)
float32
...
long_name :
Height of column used in background calculation
units :
meters
source :
ATBD, section 7.3
contentType :
referenceInformation
description :
The height of the altimetric range window after subtracting the height span of the signal photon events in the 50-shot span
[84156 values with dtype=float32]
background_r_norm
(delta_time)
float32
...
long_name :
Normalized background (50-shot)
units :
hz
source :
ATBD section 4.3.1.3
contentType :
referenceInformation
description :
Background rate normalized to a fixed solar elevation angle
[84156 values with dtype=float32]
bsnow_con
(delta_time)
float32
...
long_name :
Blowing snow confidence
units :
1
source :
ATL09
contentType :
modelResult
description :
Blowing snow confidence
[84156 values with dtype=float32]
bsnow_h
(delta_time)
float32
...
long_name :
Blowing snow top h
units :
meters
source :
ATL09
contentType :
modelResult
description :
Blowing snow layer top height
[84156 values with dtype=float32]
cloud_flag_asr
(delta_time)
float32
...
units :
1
source :
Atmosphere ATBD
long_name :
Cloud Flag ASR
valid_min :
0
valid_max :
6
contentType :
modelResult
description :
Cloud flag (probability) from apparent surface reflectance. 0=clear with high confidence; 1=clear with medium confidence; 2=clear with low confidence; 3=cloudy with low confidence; 4=cloudy with medium confidence; 5=cloudy with high confidence; 6=unknown
This flag is a combination of multiple flags (cloud_flag_atm, cloud_flag_asr, and bsnow_con) and takes daytime/nighttime into consideration. A value of 1 means clouds or blowing snow are likely present. A value of 0 indicates the likely absence of clouds or blowing snow.
flag_meanings :
likely_clear likely_cloudy
flag_values :
[0 1]
[84156 values with dtype=float32]
msw_flag
(delta_time)
float32
...
long_name :
Multiple Scattering Warning Flag
units :
1
source :
Atmosphere ATBD
valid_min :
-1
valid_max :
5
contentType :
modelResult
description :
Multiple Scattering warning flag. The multiple scattering warning flag (ATL09 parameter msw_flag) has values from -1 to 5 where zero means no multiple scattering and 5 the greatest. If no layers were detected, then msw_flag = 0. If blowing snow is detected and its estimated optical depth is greater than or equal to 0.5, then msw_flag = 5. If the blowing snow optical depth is less than 0.5, then msw_flag = 4. If no blowing snow is detected but there are cloud or aerosol layers detected, the msw_flag assumes values of 1 to 3 based on the height of the bottom of the lowest layer: < 1 km, msw_flag = 3; 1-3 km, msw_flag = 2; > 3km, msw_flag = 1. A value of -1 indicates that the signal to noise of the data was too low to reliably ascertain the presence of cloud or blowing snow. We expect values of -1 to occur only during daylight.
Ocean depth (anc43). Note, negative value corresponds to ocean depth, positive value corresponds to above sea level.
[84156 values with dtype=float32]
photon_rate
(delta_time)
float32
...
long_name :
photon rate
units :
photons/shot
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Photon rate averaged over sea ice segment. Computed by dividing the number of photons in trimmed histogram (n_photons_used) by the number of used shots (height_segment_n_pulse_seg_used).
[84156 values with dtype=float32]
trim_height_bottom
(delta_time)
float32
...
long_name :
minimum height of trimmed photons
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
minimum height of trimmed photons used in the surface calculation procedure
[84156 values with dtype=float32]
trim_height_top
(delta_time)
float32
...
long_name :
maximum height of trimmed photons
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
maximum height of trimmed photons used in the surface calculation procedure
[84156 values with dtype=float32]
yapc_knn_mean
(delta_time)
float32
...
long_name :
mean YAPC KNN value
standard_name :
yapc_knn_mean
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC KNN value from ATL03 gooses used in the ATL07 segment
[84156 values with dtype=float32]
yapc_weight_ph_cts_n
(delta_time, ds_yapc_hist_bins)
int16
...
long_name :
YAPC photon weights histogram
standard_name :
yapc_weight_ph_cts_n
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
YAPC weight counts within 6 log-scale bins using all aggregated photons (bin1: 0-56, bin2: 57-133, bin3: 134-178, bin4: 179-210, bin5: 211-234, bin6: 235-255)
[504936 values with dtype=int16]
yapc_weight_ph_mean_actual
(delta_time)
float32
...
long_name :
mean YAPC weight from all aggregrated photons
standard_name :
yapc_weight_ph_mean_actual
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC weights from all photons aggregated within the ATL07 segment (pre-trimmed)
[84156 values with dtype=float32]
yapc_weight_ph_mean_used
(delta_time)
float32
...
long_name :
mean YAPC weight from trimmed photons
standard_name :
yapc_weight_ph_mean_used
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC weights from trimmed photons within the ATL07 segment (post-trimmed)
[84156 values with dtype=float32]
Description :
Contains parameters related to quality and corrections on the sea ice height paramters
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
delta_time: 84156
delta_time
(delta_time)
datetime64[ns]
2022-07-26T16:28:36.327703152 .....
long_name :
Elapsed GPS seconds
standard_name :
time
source :
telemetry
contentType :
physicalMeasurement
description :
Number of GPS seconds since the ATLAS SDP epoch. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
The direction, eastwards from north, of the laser beam vector as seen by an observer at the laser ground spot viewing toward the spacecraft (i.e., the vector from the ground to the spacecraft). When the spacecraft is precisely at the geodetic zenith, the value will be 99999 degrees.
[88040 values with dtype=float32]
beam_coelev
(delta_time)
float32
...
long_name :
beam co-elevation
units :
radians
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Co-elevation (CE) is direction from the plane of the laser beam as seen by an observer located at the laser ground spot.
[88040 values with dtype=float32]
height_segment_podppd_flag
(delta_time)
float32
...
long_name :
POD_PPD Flag
units :
1
source :
ATL02, ANC04, ANC05, ATL03
valid_min :
0
valid_max :
7
contentType :
referenceInformation
description :
Composite POD/PPD flag from ATL03 that indicates the quality of input geolocation products. Value is set as the highest podppd_flag value from ATL03 associated with this segment. A non-zero value may indicate that geolocation solutions are degraded or that ATLAS is within a calibration scan period (CAL). Possible non-CAL values are: 0=NOMINAL; 1=POD_DEGRADE; 2=PPD_DEGRADE; 3=PODPPD_DEGRADE; possible CAL values are: 4=CAL_NOMINAL; 5=CAL_POD_DEGRADE; 6=CAL_PPD_DEGRADE; 7=CAL_PODPPD_DEGRADE.
[88040 values with dtype=float32]
rgt
(delta_time)
int16
...
long_name :
Reference Ground track
units :
1
source :
Sea Ice ATBD
valid_min :
1
valid_max :
1387
contentType :
referenceInformation
description :
The reference ground track (RGT) is the track on the earth at which a specified unit vector within the observatory is pointed. Under nominal operating conditions, there will be no data collected along the RGT, as the RGT is spanned by GT3 and GT4. During slews or off-pointing, it is possible that ground tracks may intersect the RGT. The ICESat-2 mission has 1387 RGTs.
[88040 values with dtype=int16]
sigma_h
(delta_time)
float32
...
long_name :
height uncertainty
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point ellipsoid height: 1- sigma (m). Error estimates for all other photons in the group are computed with the scale defined below.
[88040 values with dtype=float32]
sigma_lat
(delta_time)
float32
...
long_name :
latitude uncertainty
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point geodetic latitude: 1- sigma (degrees). Applies to all other photons in the group
[88040 values with dtype=float32]
sigma_lon
(delta_time)
float32
...
long_name :
longitude uncertainty
units :
degrees
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Estimated uncertainty for the reference photon bounce point east longitude: 1- sigma (degrees). Applies to all other photons in the group.
[88040 values with dtype=float32]
solar_azimuth
(delta_time)
float32
...
long_name :
solar azimuth
units :
degrees_east
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
The direction, eastwards from north, of the sun vector as seen by an observer at the laser ground spot.
[88040 values with dtype=float32]
solar_elevation
(delta_time)
float32
...
long_name :
solar elevation
source :
Sea Ice ATBD
contentType :
auxiliaryInformation
description :
Solar Angle above or below the plane tangent to the ellipsoid surface at the laser spot. Positive values mean the sun is above the horizon, while negative values mean it is below the horizon. The effect of atmospheric refraction is not included. This is a low precision value, with approximately TBD degree accuracy.
units :
degrees
[88040 values with dtype=float32]
Description :
Contains parameters related to geolocation.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Dynamic Atmospheric Correction (DAC) includes inverted barometer (IB) effect.
[88040 values with dtype=float32]
height_segment_dynib
(delta_time)
float32
...
long_name :
Dynamic inverted barometer effect
standard_name :
dynamic inverted baromter
units :
meters
source :
ATBD, section 4.2
contentType :
referenceInformation
description :
Inverted barometer effect calculated from dynamic mean ocean sea level pressure (computed using ANC10 and ANC48, /ancillary_data/sea_ice/mean_ocean_slp)
[88040 values with dtype=float32]
height_segment_earth
(delta_time)
float32
...
units :
meters
long_name :
Earth Tide
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Solid Earth Tide. The solid earth tide height is in the tide-free system.
[88040 values with dtype=float32]
height_segment_earth_free2mean
(delta_time)
float32
...
long_name :
Earth Tide Free-to-Mean conversion
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Additive value to convert solid earth tide from the tide-free system to the mean-tide system. (Add to height_segment_eath to get the solid earth tides in the mean-tide system.)
[88040 values with dtype=float32]
height_segment_geoid
(delta_time)
float32
...
units :
meters
long_name :
EGM2008 Geoid
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Geoid height above WGS-84 reference ellipsoid (range -107 to 86m), based on the EGM2008 model. The geoid height is in the tide-free system.
[88040 values with dtype=float32]
height_segment_geoid_free2mean
(delta_time)
float32
...
long_name :
EGM2008 Geoid Free-to-Mean conversion
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Additive value to convert geoid heights from the tide-free system to the mean-tide system. (Add to height_segment_geoid to get the geoid heights in the mean-tide system.)
[88040 values with dtype=float32]
height_segment_ib
(delta_time)
float32
...
long_name :
Inverted barometer effect
units :
meters
source :
ATBD, section 4.2
contentType :
referenceInformation
description :
Inverted barometer effect calculated from surface pressure
[88040 values with dtype=float32]
height_segment_load
(delta_time)
float32
...
long_name :
Load Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Load Tide - Local displacement due to Ocean Loading (-6 to 0 cm).
[88040 values with dtype=float32]
height_segment_lpe
(delta_time)
float32
...
units :
meters
long_name :
Equilibrium Tide
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Long period equilibrium tide self-consistent with ocean tide model (+-0.04m). (dependent only on time and latitude)
[88040 values with dtype=float32]
height_segment_mss
(delta_time)
float32
...
long_name :
CryoSat-2/DTU13 Mean Sea Surface (tide free)
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean sea surface height above WGS-84 reference ellipsoid (range: -68 to 65m), based on a CryoSat-2/DTU13 merged product (https://doi.org/10.5281/zenodo.4294047). The MSS height (from ANC15) is adjusted to be in a tide free reference system (subtracting the geoid_free2mean correction) to be consistent with the tide free ATL03 heights.
[88040 values with dtype=float32]
height_segment_mss_interp_flag
(delta_time)
float64
...
long_name :
MSS interpolation flag
standard_name :
mss_interp_flag
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
Flag marking where MSS has been interpolated
flag_meanings :
no_interpolation interpolation extrapolation
flag_values :
[0 1 2]
[88040 values with dtype=float64]
height_segment_ocean
(delta_time)
float32
...
long_name :
Ocean Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Ocean Tides including diurnal and semi-diurnal (harmonic analysis), and longer period tides (dynamic and self-consistent equilibrium)
[88040 values with dtype=float32]
height_segment_pole
(delta_time)
float32
...
long_name :
Pole Tide
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Pole Tide -Rotational deformation due to polar motion (-1.5 to 1.5 cm).
[88040 values with dtype=float32]
height_segment_ps
(delta_time)
float32
...
long_name :
sea level pressure
standard_name :
pressure
units :
Pa
source :
ATL09
contentType :
referenceInformation
description :
Sea Level Pressure (Pa)
[88040 values with dtype=float32]
height_segment_t2m
(delta_time)
float32
...
long_name :
temperature_at_2m
standard_name :
temperature
units :
K
source :
ATL09
contentType :
referenceInformation
description :
Temperature at 2m above the displacement height (K)
[88040 values with dtype=float32]
height_segment_tide_interp_flag
(delta_time)
float64
...
long_name :
tide interpolation flag
standard_name :
tide_interp_flag
units :
1
source :
Sea Ice ATBD
valid_min :
0
valid_max :
2
contentType :
referenceInformation
description :
Flag marking where ocean tide and LPE tide has been interpolated
flag_meanings :
no_interpolation interpolation extrapolation
flag_values :
[0 1 2]
[88040 values with dtype=float64]
height_segment_u2m
(delta_time)
float32
...
long_name :
Eastward_wind_at_2m
standard_name :
eastward_wind
units :
m s-1
source :
ATL09
contentType :
referenceInformation
description :
Eastward wind at 2m above the displacement height (m/s-1)
[88040 values with dtype=float32]
height_segment_v2m
(delta_time)
float32
...
long_name :
Northward_wind_at_2m
standard_name :
northward_wind
units :
m s-1
source :
ATL09
contentType :
referenceInformation
description :
Northward wind at 2m above the displacement height (m/s-1)
[88040 values with dtype=float32]
Description :
Contains geophysical parameters and corrections used to correct photon heights for geophysical effects, such as tides.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Across track distance of photons averaged over the sea ice height segment.
[88040 values with dtype=float32]
height_segment_asr_calc
(delta_time)
float32
...
long_name :
Calculated Apparent Surface Reflectivity
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Computed apparent surface reflectance for the sea ice segment.
[88040 values with dtype=float32]
height_segment_confidence
(delta_time)
float32
...
long_name :
Surface height confidence
units :
1
source :
ATBD, section 4.2.4.2
contentType :
referenceInformation
description :
Confidence level in the surface height estimate based on analysis of the error surface, defined as the mean-square difference between the height distribution and expected return (computed waveform table). The height_segment_confidence is computed as ( min(error_surf) - mean(error_surf) ).
[88040 values with dtype=float32]
height_segment_contrast_ratio
(delta_time)
float32
...
long_name :
ratio of maximum photon rate to segment photon rate
standard_name :
contrast_ratio
units :
1
source :
ATBD
contentType :
referenceInformation
description :
Ratio of maximum segment photon rate within an along-track distance of +/- contrast_length_scale to the photon rate of the current segment.
[88040 values with dtype=float32]
height_segment_fit_quality_flag
(delta_time)
float32
...
long_name :
height Quality Flag
units :
1
source :
ATBD, section 4.2.4.2
valid_min :
-1
valid_max :
5
contentType :
referenceInformation
description :
Flag describing the quality of the results of the along-track fit. (-1=height value is invalid; 1=ngrid_w < wlength/2; 2=ngrid_w >= wlength/2; 3=ngrid_dt < dtlength/2; 4=ngrid_dt >= dtlength/2; 5=ngrid_dt >= (dtlength-2): where 1 is best and 5 is poor). Heights are reported even if this flag indicates the height is invalid.
flag_meanings :
invalid best high med low poor
flag_values :
[-1 1 2 3 4 5]
[88040 values with dtype=float32]
height_segment_height
(delta_time)
float32
...
long_name :
height of segment surface
standard_name :
h_surf
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Mean height from along-track segment fit determined by the sea ice algorithm. Ocean tides and inverted barometer corrections are also applied (see Appendix J of ATBD). The sea ice height is relative to the tide-free MSS.
[88040 values with dtype=float32]
height_segment_height_uncorr
(delta_time)
float32
...
long_name :
height of segment with no additional geophysical corrections applied in ATL07
standard_name :
h_surf_uncorr
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Mean segment height with no additional geophysical corrections applied in ATL07 (see Appendix J of ATBD).
[88040 values with dtype=float32]
height_segment_htcorr_skew
(delta_time)
float32
...
long_name :
Height Correction for Skew
units :
meters
source :
ATBD, section 4.2.6
contentType :
referenceInformation
description :
height corection for skew
[88040 values with dtype=float32]
height_segment_length_seg
(delta_time)
float32
...
long_name :
length of segment
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
along-track length of segment containing n_photons_actual
[88040 values with dtype=float32]
height_segment_n_pulse_seg
(delta_time)
int32
...
long_name :
number of laser pulses
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
number of laser pulses spanned to gather photons in sea ice segment, including specular returns.
[88040 values with dtype=int32]
height_segment_n_pulse_seg_used
(delta_time)
int32
...
long_name :
number of laser pulses used
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
number of laser pulses used in processing sea ice segment, excluding specular returns. Computed as number of laser pulses spanned (height_segment_n_pulse_seg) - number of specular shots excluded.
[88040 values with dtype=int32]
height_segment_quality
(delta_time)
int8
...
long_name :
Height Segment Quality Flag
units :
1
source :
ATBD, section 4.2.4
valid_min :
0
valid_max :
1
contentType :
referenceInformation
description :
Height segment quality flag, 1 is good quality, 0 is bad depending on fit, wguassian, or layer flag
flag_meanings :
bad_quality good_quality
flag_values :
[0 1]
[88040 values with dtype=int8]
height_segment_rms
(delta_time)
float32
...
long_name :
height rms
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
RMS difference between sea ice modeled and observed photon height distribution
[88040 values with dtype=float32]
height_segment_ssh_flag
(delta_time)
int8
...
long_name :
Sea Surface Flag
units :
1
source :
ATBD, section 4.3
valid_min :
0
valid_max :
1
contentType :
referenceInformation
description :
Identifies the height segments that are candidates for use as sea surface reference in freeboard calculations in ATL10. 0 = sea ice; 1 = sea surface
flag_meanings :
sea_ice sea_surface
flag_values :
[0 1]
[88040 values with dtype=int8]
height_segment_surface_error_est
(delta_time)
float32
...
long_name :
h surface error est
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Error estimate of the surface height
[88040 values with dtype=float32]
height_segment_type
(delta_time)
int8
...
long_name :
Segment surface type
units :
1
source :
ATBD, section 4.3
valid_min :
-1
valid_max :
9
contentType :
referenceInformation
description :
Value that indicates segment surface type as sea ice or different types of sea surface.
Contains parameters relating to the calculated surface height for one Ground Track. As ICESat-2 orbits the earth, sequential transmit pulses illuminate six ground tracks on the surface of the earth.
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
Dimension scale indexing the sea ice histogram bins. The bin heights must be computed from information contained within the same group as the histogram.
Dimension scale indexing the YAPC histogram bins. The histogram contains YAPC weight counts within 6 log-scale bins.
array([1, 2, 3, 4, 5, 6], dtype=int32)
asr_25
(delta_time)
float32
...
long_name :
Apparent Surface Reflectance 25hz
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Apparent surface reflectance at 25 hz, averaged to the sea ice segment.
[88040 values with dtype=float32]
backgr_calc
(delta_time)
float32
...
long_name :
background count rate calculated
units :
hz
source :
ATBD, section 4.2.3
contentType :
referenceInformation
description :
Calculated background count rate based on sun angle, surface slope, unit reflectance
[88040 values with dtype=float32]
backgr_r_200
(delta_time)
float32
...
long_name :
Background rate 200 hz
units :
hz
source :
ATL09
contentType :
referenceInformation
description :
Background count rate, averaged over the segment based on ATLAS 50 pulse counts
[88040 values with dtype=float32]
backgr_r_25
(delta_time)
float32
...
long_name :
Background rate 25hz
units :
hz
source :
ATL09
contentType :
referenceInformation
description :
Background count rate, averaged over the segment based on 25 hz atmosphere
[88040 values with dtype=float32]
background_int_height
(delta_time)
float32
...
long_name :
Height of column used in background calculation
units :
meters
source :
ATBD, section 7.3
contentType :
referenceInformation
description :
The height of the altimetric range window after subtracting the height span of the signal photon events in the 50-shot span
[88040 values with dtype=float32]
background_r_norm
(delta_time)
float32
...
long_name :
Normalized background (50-shot)
units :
hz
source :
ATBD section 4.3.1.3
contentType :
referenceInformation
description :
Background rate normalized to a fixed solar elevation angle
[88040 values with dtype=float32]
bsnow_con
(delta_time)
float32
...
long_name :
Blowing snow confidence
units :
1
source :
ATL09
contentType :
modelResult
description :
Blowing snow confidence
[88040 values with dtype=float32]
bsnow_h
(delta_time)
float32
...
long_name :
Blowing snow top h
units :
meters
source :
ATL09
contentType :
modelResult
description :
Blowing snow layer top height
[88040 values with dtype=float32]
cloud_flag_asr
(delta_time)
float32
...
units :
1
source :
Atmosphere ATBD
long_name :
Cloud Flag ASR
valid_min :
0
valid_max :
6
contentType :
modelResult
description :
Cloud flag (probability) from apparent surface reflectance. 0=clear with high confidence; 1=clear with medium confidence; 2=clear with low confidence; 3=cloudy with low confidence; 4=cloudy with medium confidence; 5=cloudy with high confidence; 6=unknown
This flag is a combination of multiple flags (cloud_flag_atm, cloud_flag_asr, and bsnow_con) and takes daytime/nighttime into consideration. A value of 1 means clouds or blowing snow are likely present. A value of 0 indicates the likely absence of clouds or blowing snow.
flag_meanings :
likely_clear likely_cloudy
flag_values :
[0 1]
[88040 values with dtype=float32]
msw_flag
(delta_time)
float32
...
long_name :
Multiple Scattering Warning Flag
units :
1
source :
Atmosphere ATBD
valid_min :
-1
valid_max :
5
contentType :
modelResult
description :
Multiple Scattering warning flag. The multiple scattering warning flag (ATL09 parameter msw_flag) has values from -1 to 5 where zero means no multiple scattering and 5 the greatest. If no layers were detected, then msw_flag = 0. If blowing snow is detected and its estimated optical depth is greater than or equal to 0.5, then msw_flag = 5. If the blowing snow optical depth is less than 0.5, then msw_flag = 4. If no blowing snow is detected but there are cloud or aerosol layers detected, the msw_flag assumes values of 1 to 3 based on the height of the bottom of the lowest layer: < 1 km, msw_flag = 3; 1-3 km, msw_flag = 2; > 3km, msw_flag = 1. A value of -1 indicates that the signal to noise of the data was too low to reliably ascertain the presence of cloud or blowing snow. We expect values of -1 to occur only during daylight.
Ocean depth (anc43). Note, negative value corresponds to ocean depth, positive value corresponds to above sea level.
[88040 values with dtype=float32]
photon_rate
(delta_time)
float32
...
long_name :
photon rate
units :
photons/shot
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
Photon rate averaged over sea ice segment. Computed by dividing the number of photons in trimmed histogram (n_photons_used) by the number of used shots (height_segment_n_pulse_seg_used).
[88040 values with dtype=float32]
trim_height_bottom
(delta_time)
float32
...
long_name :
minimum height of trimmed photons
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
minimum height of trimmed photons used in the surface calculation procedure
[88040 values with dtype=float32]
trim_height_top
(delta_time)
float32
...
long_name :
maximum height of trimmed photons
units :
meters
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
maximum height of trimmed photons used in the surface calculation procedure
[88040 values with dtype=float32]
yapc_knn_mean
(delta_time)
float32
...
long_name :
mean YAPC KNN value
standard_name :
yapc_knn_mean
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC KNN value from ATL03 gooses used in the ATL07 segment
[88040 values with dtype=float32]
yapc_weight_ph_cts_n
(delta_time, ds_yapc_hist_bins)
int16
...
long_name :
YAPC photon weights histogram
standard_name :
yapc_weight_ph_cts_n
units :
1
source :
ATBD, section 4.2.2.4
contentType :
referenceInformation
description :
YAPC weight counts within 6 log-scale bins using all aggregated photons (bin1: 0-56, bin2: 57-133, bin3: 134-178, bin4: 179-210, bin5: 211-234, bin6: 235-255)
[528240 values with dtype=int16]
yapc_weight_ph_mean_actual
(delta_time)
float32
...
long_name :
mean YAPC weight from all aggregrated photons
standard_name :
yapc_weight_ph_mean_actual
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC weights from all photons aggregated within the ATL07 segment (pre-trimmed)
[88040 values with dtype=float32]
yapc_weight_ph_mean_used
(delta_time)
float32
...
long_name :
mean YAPC weight from trimmed photons
standard_name :
yapc_weight_ph_mean_used
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Mean YAPC weights from trimmed photons within the ATL07 segment (post-trimmed)
[88040 values with dtype=float32]
Description :
Contains parameters related to quality and corrections on the sea ice height paramters
data_rate :
Data within this group are stored at the sea_ice_height segment rate.
delta_time: 88040
delta_time
(delta_time)
datetime64[ns]
2022-07-26T16:28:36.138731328 .....
long_name :
Elapsed GPS seconds
standard_name :
time
source :
telemetry
contentType :
physicalMeasurement
description :
Number of GPS seconds since the ATLAS SDP epoch. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
Geolocation segment (geoseg) ID associated with the first photon used in this sea ice segment
[88040 values with dtype=int32]
geoseg_end
(delta_time)
int32
...
long_name :
Ending GEOSEG
units :
1
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Geolocation segment (geoseg) ID associated with the last photon used in this sea ice segment
[88040 values with dtype=int32]
height_segment_id
(delta_time)
int32
...
units :
1
long_name :
Identifier of each height segment
source :
ATBD, section 5.2
contentType :
referenceInformation
description :
Identifier of each height segment
[88040 values with dtype=int32]
seg_dist_x
(delta_time)
float64
...
long_name :
Along track distance
units :
meters
source :
Sea Ice ATBD
contentType :
referenceInformation
description :
Along-track distance from the equator crossing to the segment center.
[88040 values with dtype=float64]
Description :
Top group for sea ice segments as computed by the ATBD aglorithm
data_rate :
Data within this group are stored at the variable segment rate.
Description :
This ground contains parameters and subgroups related a specific groundtrack.
data_rate :
Each subgroup identifies its particular data rate.
atlas_pce :
pce1
atlas_beam_type :
strong
groundtrack_id :
gt3r
atmosphere_profile :
profile_3
atlas_spot_number :
1
sc_orientation :
Forward
short_name :
ATL07
level :
L3A
title :
SET_BY_META
description :
The data set (ATL07) contains along-track heights for sea ice and open water leads (at varying length scales) after adjustment for geoidal, tidal variations, and inverted barometer effects.
Conventions :
CF-1.6
contributor_name :
Ron Kwok (rkwok01@uw.edu), Alek Petty (alek.a.petty@nasa.gov), Jesse Wimert (jesse.wimert@us.kbr.com), Marco Bagnardi (marco.bagnardi@nasa.gov), Glenn Cunningham, David W Hancock III (david.w.hancock@nasa.gov), Jeff Lee (jeffery.e.lee@nasa.gov), Alvaro Ivanoff (alvaro.ivanoff-1@nasa.gov), Nathan Kurtz (nathan.t.kurtz@nasa.gov)
contributor_role :
Data Product Lead, Data Product Lead, Software Engineer, Data Analysis, Data Analysis, Software Engineer, Software Engineer, Software Support, Mission Scientist, Mission Scientist, Deputy Mission Scientist
date_type :
UTC
featureType :
trajectory
geospatial_lat_units :
degrees_north
geospatial_lon_units :
degrees_east
granule_type :
ATL07
identifier_product_doi_authority :
http://dx.doi.org
license :
Data may not be reproduced or distributed without including the citation for this product included in this metadata. Data may not be distributed in an altered form without the written permission of the ICESat-2 Science Project Office at NASA/GSFC.
naming_authority :
http://dx.doi.org
spatial_coverage_type :
Horizontal
standard_name_vocabulary :
CF-1.6
time_type :
CCSDS UTC-A
date_created :
2023-05-21T12:14:58.000000Z
hdfversion :
HDF5 1.10.7
history :
2023-05-21T12:14:58.000000Z;8968f925-6a50-3745-a703-c84784bdbb97;Created by PGE atlas_l3a_si Version 5.0.1
identifier_file_uuid :
8968f925-6a50-3745-a703-c84784bdbb97
identifier_product_format_version :
5.0
time_coverage_duration :
5657.0
time_coverage_end :
2022-07-26T17:45:30.000000Z
time_coverage_start :
2022-07-26T16:11:13.000000Z
geospatial_lat_min :
66.17219880471546
geospatial_lon_min :
-100.05994756798654
geospatial_lat_max :
88.04039962366939
geospatial_lon_max :
72.80189658087069
publisher_name :
NSIDC DAAC > NASA National Snow and Ice Data Center Distributed Active Archive Center
publisher_email :
nsidc@nsidc.org
publisher_url :
http://nsidc.org/daac/
identifier_product_type :
ATL07
identifier_product_doi :
doi:10.5067/ATLAS/ATL07.006
institution :
National Aeronautics and Space Administration (NASA)
creator_name :
GSFC I-SIPS > ICESat-2 Science Investigator-led Processing System
summary :
The purpose of ATL07 is to provide along-track sea ice heights and associated statistics.
Cite these data in publications as follows: The data used in this study were produced by the ICESat-2 Science Project Office at NASA/GSFC. The data archive site is the NASA National Snow and Ice Data Center Distributed Active Archive Center.
processing_level :
2A
references :
http://nsidc.org/data/icesat2/data.html
project :
ICESat-2 > Ice, Cloud, and land Elevation Satellite-2
instrument :
ATLAS > Advanced Topographic Laser Altimeter System
platform :
ICESat-2 > Ice, Cloud, and land Elevation Satellite-2
The time of the last spacecraft orientation change between forward, backward and transitional flight modes, expressed in seconds since the ATLAS SDP GPS Epoch. ICESat-2 is considered to be flying forward when the weak beams are leading the strong beams; and backward when the strong beams are leading the weak beams. ICESat-2 is considered to be in transition while it is maneuvering between the two orientations. Science quality is potentially degraded while in transition mode. The ATLAS Standard Data Products (SDP) epoch offset is defined within /ancillary_data/atlas_sdp_gps_epoch as the number of GPS seconds between the GPS epoch (1980-01-06T00:00:00.000000Z UTC) and the ATLAS SDP epoch. By adding the offset contained within atlas_sdp_gps_epoch to delta time parameters, the time in gps_seconds relative to the GPS epoch can be computed.
This parameter tracks the spacecraft orientation between forward, backward and transitional flight modes. ICESat-2 is considered to be flying forward when the weak beams are leading the strong beams; and backward when the strong beams are leading the weak beams. ICESat-2 is considered to be in transition while it is maneuvering between the two orientations. Science quality is potentially degraded while in transition mode.
flag_meanings :
backward forward transition
flag_values :
[0 1 2]
"
+ ],
+ "text/plain": [
+ " Size: 1B\n",
+ "[1 values with dtype=int8]\n",
+ "Coordinates:\n",
+ " * sc_orient_time (sc_orient_time) datetime64[ns] 8B 2022-07-25T23:30:00\n",
+ "Attributes:\n",
+ " long_name: Spacecraft Orientation\n",
+ " units: 1\n",
+ " source: POD/PPD\n",
+ " valid_min: 0\n",
+ " valid_max: 2\n",
+ " contentType: referenceInformation\n",
+ " description: This parameter tracks the spacecraft orientation between ...\n",
+ " flag_meanings: backward forward transition\n",
+ " flag_values: [0 1 2]"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "dt[\"orbit_info\"][\"sc_orient\"]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "69231947-8c32-4c62-991c-317e8b383c88",
+ "metadata": {},
+ "source": [
+ "`sc_orient` is `1`, so the spacecraft is in the forward orientation. Left beams are weak and right beams are strong."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "10259343-78a6-4ba4-80ac-99ad27a50923",
+ "metadata": {},
+ "source": [
+ "We will work with the first strong beam \"GT1R\".\n",
+ "\n",
+ "The datatree structure is a little cumbersome, and for this demonstration we only want a few variables, so we will load the data into a `pandas.DataFrame`.\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "c6d8ee24-3cef-4926-821f-25634cf7818e",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "