diff --git a/.nojekyll b/.nojekyll index 17f5509a..457743a5 100644 --- a/.nojekyll +++ b/.nojekyll @@ -1 +1 @@ -f541c9d1 \ No newline at end of file +7b07753e \ No newline at end of file diff --git a/external/Direct_S3_Access_NetCDF.html b/external/Direct_S3_Access_NetCDF.html index 00e29f84..3e242e3c 100644 --- a/external/Direct_S3_Access_NetCDF.html +++ b/external/Direct_S3_Access_NetCDF.html @@ -2,7 +2,7 @@ - + diff --git a/external/DownloadDopplerScattData.html b/external/DownloadDopplerScattData.html index 98a76d27..ce8a7db5 100644 --- a/external/DownloadDopplerScattData.html +++ b/external/DownloadDopplerScattData.html @@ -2,7 +2,7 @@ - + @@ -1064,7 +1064,7 @@

S-MODE Workshop: Science Case Study Airborne Part 1

-

imported on: 2024-05-30

+

imported on: 2024-06-03

This notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop

diff --git a/external/Downloader.html b/external/Downloader.html index 9beb5b65..d62fbf2d 100644 --- a/external/Downloader.html +++ b/external/Downloader.html @@ -2,7 +2,7 @@ - + @@ -1113,7 +1113,7 @@

Advanced Usage

Download data by filename

If you’re aware of a file you want to download, you can use the -gr option to download by a filename. The -c (COLLECTION) and -d (directory) options are still required.

The -gr option works by taking the file name, removing the suffix and searching for a CMR entry called the granuleUR. Some examples of this include:

- +
diff --git a/external/ECCO_cloud_direct_access_s3.html b/external/ECCO_cloud_direct_access_s3.html index 0d6ccd77..ca3cd8c6 100644 --- a/external/ECCO_cloud_direct_access_s3.html +++ b/external/ECCO_cloud_direct_access_s3.html @@ -2,7 +2,7 @@ - + @@ -1073,7 +1073,7 @@

Direct Access to ECCO V4r4 Datasets in the Cloud

-

imported on: 2024-05-30

+

imported on: 2024-06-03

This notebook is from a different repository in NASA’s PO.DAAC, ECCO.

diff --git a/external/ECCO_download_data.html b/external/ECCO_download_data.html index 4a114ead..abcfe65b 100644 --- a/external/ECCO_download_data.html +++ b/external/ECCO_download_data.html @@ -2,7 +2,7 @@ - + @@ -1068,7 +1068,7 @@

Access to ECCO V4r4 Datasets on a Local Machine

-

imported on: 2024-05-30

+

imported on: 2024-06-03

This notebook is from a different repository in NASA’s PO.DAAC, ECCO.

diff --git a/external/Introduction_to_xarray.html b/external/Introduction_to_xarray.html index a80b9f02..e98b9c98 100644 --- a/external/Introduction_to_xarray.html +++ b/external/Introduction_to_xarray.html @@ -2,7 +2,7 @@ - + @@ -1067,7 +1067,7 @@

Xarray

-

imported on: 2024-05-30

+

imported on: 2024-06-03

This notebook is from NASA Openscapes 2021 Cloud Hackathon Repository

diff --git a/external/July_2022_Earthdata_Webinar.html b/external/July_2022_Earthdata_Webinar.html index 96407e2b..1b53fd2d 100644 --- a/external/July_2022_Earthdata_Webinar.html +++ b/external/July_2022_Earthdata_Webinar.html @@ -2,7 +2,7 @@ - + @@ -1124,7 +1124,7 @@

Earthdata Webinar

-

imported on: 2024-05-30

+

imported on: 2024-06-03

This notebook is from a different repository in NASA’s PO.DAAC, the-coding-club

@@ -1218,7 +1218,7 @@

Target audience

Important terms

-
+
diff --git a/external/NASA_Earthdata_Authentication.html b/external/NASA_Earthdata_Authentication.html index af799cf4..7ecdfe5a 100644 --- a/external/NASA_Earthdata_Authentication.html +++ b/external/NASA_Earthdata_Authentication.html @@ -2,7 +2,7 @@ - + diff --git a/external/SWOT_SSH_dashboard.html b/external/SWOT_SSH_dashboard.html index 29e55a1f..cc363efa 100644 --- a/external/SWOT_SSH_dashboard.html +++ b/external/SWOT_SSH_dashboard.html @@ -2,7 +2,7 @@ - + @@ -1084,7 +1084,7 @@

Integrating Dask, Kerchunk, Zarr and Xarray

-

imported on: 2024-05-30

+

imported on: 2024-06-03

This notebook is from a different repository in NASA’s PO.DAAC, the-coding-club.

@@ -2320,14 +2320,13 @@

Start Dask cluster

client = Client()
 client
-

Client

Client-a98b3e17-0bf6-11ef-a03f-026f296dd6e0

-
+
@@ -2355,7 +2354,7 @@

Clus

LocalCluster

b2c50b04

-

Connection method: Cluster object
+
@@ -2385,7 +2384,7 @@

Sc

Scheduler

Scheduler-fbf59411-ff23-476d-8aee-b7db54450a06

-

Dashboard: /user/ayushnag/proxy/8787/status
+
@@ -2418,7 +2417,7 @@

Workers

Worker: 0

-
Comm: tcp://127.0.0.1:42863
+
@@ -2451,7 +2450,7 @@

Worker: 1

-
Comm: tcp://127.0.0.1:40817
+
@@ -2471,7 +2470,7 @@

Comm: tcp://127.0.0.1:46235
- +
@@ -2484,7 +2483,7 @@

Worker: 2

- +
@@ -2517,7 +2516,7 @@

Worke

Worker: 3

-

Comm: tcp://127.0.0.1:40923
+
@@ -2563,7 +2562,6 @@

Worke -
@@ -2619,7 +2617,6 @@

Read JSON from VEDA an Wall time: 231 ms
-
@@ -3023,14 +3020,14 @@

Read JSON from VEDA an xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052... xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta... xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...

Comm: tcp://127.0.0.1:36187
+
-
+
@@ -3125,14 +3122,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3223,14 +3220,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3325,14 +3322,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3479,14 +3476,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3573,14 +3570,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3667,14 +3664,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3769,14 +3766,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3871,14 +3868,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -3973,14 +3970,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4067,14 +4064,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4177,14 +4174,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4279,14 +4276,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4373,14 +4370,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4471,14 +4468,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4573,14 +4570,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4679,14 +4676,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4777,14 +4774,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4875,14 +4872,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -4969,14 +4966,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5075,14 +5072,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5173,14 +5170,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5275,14 +5272,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5377,14 +5374,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5475,14 +5472,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5577,14 +5574,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5679,14 +5676,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5781,14 +5778,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5883,14 +5880,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -5985,14 +5982,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6087,14 +6084,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6189,14 +6186,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6295,14 +6292,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6401,14 +6398,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6507,14 +6504,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6601,14 +6598,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6695,14 +6692,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6789,14 +6786,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6891,14 +6888,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -6993,14 +6990,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7095,14 +7092,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7189,14 +7186,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7291,14 +7288,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7385,14 +7382,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7467,14 +7464,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7565,14 +7562,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7667,14 +7664,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7773,14 +7770,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7875,14 +7872,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -7977,14 +7974,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8079,14 +8076,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8181,14 +8178,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8283,14 +8280,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8385,14 +8382,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8487,14 +8484,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8589,14 +8586,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8691,14 +8688,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8793,14 +8790,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8895,14 +8892,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -8993,14 +8990,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9091,14 +9088,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9197,14 +9194,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9299,14 +9296,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9401,14 +9398,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9503,14 +9500,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9605,14 +9602,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9707,14 +9704,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9801,14 +9798,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -9899,14 +9896,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10001,14 +9998,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10103,14 +10100,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10205,14 +10202,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10307,14 +10304,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10401,14 +10398,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10499,14 +10496,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10597,14 +10594,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10699,14 +10696,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10801,14 +10798,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -10903,14 +10900,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11005,14 +11002,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11099,14 +11096,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11205,14 +11202,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11303,14 +11300,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11405,14 +11402,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11507,14 +11504,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11609,14 +11606,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11711,14 +11708,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11805,14 +11802,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11895,14 +11892,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -11993,14 +11990,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12091,14 +12088,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12189,14 +12186,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12291,14 +12288,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12393,14 +12390,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12495,14 +12492,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12597,14 +12594,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12703,14 +12700,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12809,14 +12806,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -12911,14 +12908,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -13013,14 +13010,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -13115,14 +13112,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -13209,14 +13206,14 @@

Read JSON from VEDA an
-

+
-
+
@@ -13257,7 +13254,6 @@

Read JSON from VEDA an ... 575, 576, 577, 578, 579, 580, 581, 582, 583, 584], dtype='int64', name='pass_num', length=584))
  • Conventions :
    CF-1.7
    contact :
    podaac@jpl.nasa.gov
    crid :
    PIC0
    cycle_number :
    7
    ellipsoid_flattening :
    0.0033528106647474805
    ellipsoid_semi_major_axis :
    6378137.0
    equator_longitude :
    0.17
    equator_time :
    2023-11-23T10:30:01.764000Z
    geospatial_lat_max :
    78.27206799999999
    geospatial_lat_min :
    -78.271942
    geospatial_lon_max :
    83.89423599999998
    geospatial_lon_min :
    276.449703
    good_ocean_data_percent :
    62.825390889756235
    history :
    2023-11-25T21:21:19Z : Creation
    institution :
    CNES
    left_first_latitude :
    -77.05370099999999
    left_first_longitude :
    276.469074
    left_last_latitude :
    78.27200599999999
    left_last_longitude :
    83.89423599999999
    pass_number :
    1
    pge_name :
    PGE_L2_LR_SSH
    pge_version :
    5.0.2
    platform :
    SWOT
    product_file_id :
    Expert
    product_version :
    01
    reference_document :
    D-56407_SWOT_Product_Description_L2_LR_SSH
    references :
    V1.2.1
    right_first_latitude :
    -78.27186999999999
    right_first_longitude :
    276.449703
    right_last_latitude :
    77.053837
    right_last_longitude :
    83.87640999999999
    short_name :
    L2_LR_SSH
    source :
    Ka-band radar interferometer
    ssha_variance :
    0.0860590883812041
    time_coverage_end :
    2023-11-23T10:55:43.756871
    time_coverage_start :
    2023-11-23T10:04:15.708763
    title :
    Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
    transmit_antenna :
    minus_y
    wavelength :
    0.008385803020979021
    xref_dac_files :
    SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000
    xref_geco_database_version :
    v102
    xref_gim_files :
    JPLQ3270.23I
    xref_int_lr_xover_cal_file :
    SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.nc
    xref_l1b_lr_intf_file :
    SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.nc
    xref_l2_nalt_gdr_files :
    SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.nc
    xref_l2_rad_gdr_files :
    SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.nc
    xref_meteorological_cloud_liquid_water_files :
    SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_sealevel_pressure_files :
    SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_meteorological_surface_pressure_files :
    SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000
    xref_meteorological_temperature_files :
    SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_water_vapor_files :
    SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_wettroposphere_files :
    SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_meteorological_wind_files :
    SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_model_significant_wave_height_files :
    SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_orbit_ephemeris_file :
    SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.nc
    xref_param_l2_lr_precalssh_file :
    SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.nc
    xref_pole_location_file :
    SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000
    xref_precipitation_files :
    SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb
    xref_reforbittrack_files :
    SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
    xref_sea_ice_mask_files :
    SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.nc
    xref_statickarincal_files :
    SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.nc
    xref_wave_model_files :
    SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb
  • -
    @@ -13679,7 +13675,6 @@

    Subset granules temporally

    data_s2
    -
    @@ -14084,14 +14079,14 @@

    Subset granules temporally

    xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052... xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta... xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...

    +
    -
    +
    @@ -14186,14 +14181,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14284,14 +14279,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14386,14 +14381,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14588,14 +14583,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14682,14 +14677,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14776,14 +14771,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14878,14 +14873,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -14980,14 +14975,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15082,14 +15077,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15176,14 +15171,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15286,14 +15281,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15388,14 +15383,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15482,14 +15477,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15580,14 +15575,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15682,14 +15677,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15788,14 +15783,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15886,14 +15881,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -15984,14 +15979,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16078,14 +16073,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16184,14 +16179,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16282,14 +16277,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16384,14 +16379,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16486,14 +16481,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16584,14 +16579,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16686,14 +16681,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16788,14 +16783,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16890,14 +16885,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -16992,14 +16987,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17094,14 +17089,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17196,14 +17191,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17298,14 +17293,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17404,14 +17399,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17510,14 +17505,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17616,14 +17611,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17710,14 +17705,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17804,14 +17799,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -17898,14 +17893,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18000,14 +17995,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18102,14 +18097,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18204,14 +18199,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18298,14 +18293,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18400,14 +18395,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18494,14 +18489,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18576,14 +18571,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18674,14 +18669,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18776,14 +18771,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18882,14 +18877,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -18984,14 +18979,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19086,14 +19081,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19188,14 +19183,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19290,14 +19285,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19392,14 +19387,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19494,14 +19489,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19596,14 +19591,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19698,14 +19693,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19800,14 +19795,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -19902,14 +19897,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20004,14 +19999,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20102,14 +20097,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20200,14 +20195,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20306,14 +20301,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20408,14 +20403,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20510,14 +20505,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20612,14 +20607,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20714,14 +20709,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20816,14 +20811,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -20910,14 +20905,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21008,14 +21003,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21110,14 +21105,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21212,14 +21207,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21314,14 +21309,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21416,14 +21411,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21510,14 +21505,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21608,14 +21603,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21706,14 +21701,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21808,14 +21803,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -21910,14 +21905,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22012,14 +22007,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22114,14 +22109,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22208,14 +22203,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22314,14 +22309,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22412,14 +22407,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22514,14 +22509,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22616,14 +22611,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22718,14 +22713,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22820,14 +22815,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -22914,14 +22909,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23004,14 +22999,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23102,14 +23097,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23200,14 +23195,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23298,14 +23293,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23400,14 +23395,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23502,14 +23497,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23604,14 +23599,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23706,14 +23701,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23812,14 +23807,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -23918,14 +23913,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -24020,14 +24015,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -24122,14 +24117,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -24224,14 +24219,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -24318,14 +24313,14 @@

    Subset granules temporally

    -
    +
    -
    +
    @@ -24365,7 +24360,6 @@

    Subset granules temporally

    • cycle_num
      PandasIndex
      PandasIndex(Index([7], dtype='int64', name='cycle_num'))
    • pass_num
      PandasIndex
      PandasIndex(Index([550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
              564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577],
             dtype='int64', name='pass_num'))
  • Conventions :
    CF-1.7
    contact :
    podaac@jpl.nasa.gov
    crid :
    PIC0
    cycle_number :
    7
    ellipsoid_flattening :
    0.0033528106647474805
    ellipsoid_semi_major_axis :
    6378137.0
    equator_longitude :
    0.17
    equator_time :
    2023-11-23T10:30:01.764000Z
    geospatial_lat_max :
    78.27206799999999
    geospatial_lat_min :
    -78.271942
    geospatial_lon_max :
    83.89423599999998
    geospatial_lon_min :
    276.449703
    good_ocean_data_percent :
    62.825390889756235
    history :
    2023-11-25T21:21:19Z : Creation
    institution :
    CNES
    left_first_latitude :
    -77.05370099999999
    left_first_longitude :
    276.469074
    left_last_latitude :
    78.27200599999999
    left_last_longitude :
    83.89423599999999
    pass_number :
    1
    pge_name :
    PGE_L2_LR_SSH
    pge_version :
    5.0.2
    platform :
    SWOT
    product_file_id :
    Expert
    product_version :
    01
    reference_document :
    D-56407_SWOT_Product_Description_L2_LR_SSH
    references :
    V1.2.1
    right_first_latitude :
    -78.27186999999999
    right_first_longitude :
    276.449703
    right_last_latitude :
    77.053837
    right_last_longitude :
    83.87640999999999
    short_name :
    L2_LR_SSH
    source :
    Ka-band radar interferometer
    ssha_variance :
    0.0860590883812041
    time_coverage_end :
    2023-11-23T10:55:43.756871
    time_coverage_start :
    2023-11-23T10:04:15.708763
    title :
    Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
    transmit_antenna :
    minus_y
    wavelength :
    0.008385803020979021
    xref_dac_files :
    SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000
    xref_geco_database_version :
    v102
    xref_gim_files :
    JPLQ3270.23I
    xref_int_lr_xover_cal_file :
    SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.nc
    xref_l1b_lr_intf_file :
    SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.nc
    xref_l2_nalt_gdr_files :
    SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.nc
    xref_l2_rad_gdr_files :
    SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.nc
    xref_meteorological_cloud_liquid_water_files :
    SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_sealevel_pressure_files :
    SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_meteorological_surface_pressure_files :
    SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000
    xref_meteorological_temperature_files :
    SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_water_vapor_files :
    SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_wettroposphere_files :
    SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_meteorological_wind_files :
    SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_model_significant_wave_height_files :
    SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_orbit_ephemeris_file :
    SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.nc
    xref_param_l2_lr_precalssh_file :
    SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.nc
    xref_pole_location_file :
    SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000
    xref_precipitation_files :
    SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb
    xref_reforbittrack_files :
    SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
    xref_sea_ice_mask_files :
    SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.nc
    xref_statickarincal_files :
    SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.nc
    xref_wave_model_files :
    SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb
  • -
    @@ -25154,7 +25148,6 @@

    Using .coarsen()

    Wall time: 10.4 s
    -
    @@ -25558,14 +25551,14 @@

    Using .coarsen()

    xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052... xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta... xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...
    +
    -
    +
    @@ -25660,14 +25653,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -25758,14 +25751,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -25860,14 +25853,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26014,14 +26007,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26108,14 +26101,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26202,14 +26195,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26304,14 +26297,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26406,14 +26399,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26508,14 +26501,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26602,14 +26595,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26712,14 +26705,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26814,14 +26807,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -26908,14 +26901,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27006,14 +26999,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27108,14 +27101,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27214,14 +27207,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27312,14 +27305,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27410,14 +27403,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27504,14 +27497,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27610,14 +27603,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27708,14 +27701,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27810,14 +27803,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -27912,14 +27905,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28010,14 +28003,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28112,14 +28105,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28214,14 +28207,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28316,14 +28309,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28418,14 +28411,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28520,14 +28513,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28622,14 +28615,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28724,14 +28717,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28830,14 +28823,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -28936,14 +28929,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29042,14 +29035,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29136,14 +29129,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29230,14 +29223,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29324,14 +29317,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29426,14 +29419,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29528,14 +29521,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29630,14 +29623,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29724,14 +29717,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29826,14 +29819,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -29920,14 +29913,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30002,14 +29995,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30100,14 +30093,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30202,14 +30195,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30308,14 +30301,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30410,14 +30403,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30512,14 +30505,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30614,14 +30607,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30716,14 +30709,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30818,14 +30811,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -30920,14 +30913,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31022,14 +31015,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31124,14 +31117,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31226,14 +31219,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31328,14 +31321,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31430,14 +31423,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31528,14 +31521,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31626,14 +31619,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31732,14 +31725,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31834,14 +31827,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -31936,14 +31929,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32038,14 +32031,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32140,14 +32133,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32242,14 +32235,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32336,14 +32329,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32434,14 +32427,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32536,14 +32529,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32638,14 +32631,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32740,14 +32733,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32842,14 +32835,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -32936,14 +32929,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33034,14 +33027,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33132,14 +33125,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33234,14 +33227,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33336,14 +33329,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33438,14 +33431,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33540,14 +33533,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33634,14 +33627,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33740,14 +33733,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33838,14 +33831,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -33940,14 +33933,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34042,14 +34035,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34144,14 +34137,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34246,14 +34239,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34340,14 +34333,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34430,14 +34423,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34528,14 +34521,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34626,14 +34619,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34724,14 +34717,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34826,14 +34819,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -34928,14 +34921,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35030,14 +35023,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35132,14 +35125,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35238,14 +35231,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35344,14 +35337,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35446,14 +35439,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35548,14 +35541,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35650,14 +35643,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35744,14 +35737,14 @@

    Using .coarsen()

    -
    +
    -
    +
    @@ -35792,7 +35785,6 @@

    Using .coarsen()

    ... 575, 576, 577, 578, 579, 580, 581, 582, 583, 584], dtype='int64', name='pass_num', length=584))
  • Conventions :
    CF-1.7
    contact :
    podaac@jpl.nasa.gov
    crid :
    PIC0
    cycle_number :
    7
    ellipsoid_flattening :
    0.0033528106647474805
    ellipsoid_semi_major_axis :
    6378137.0
    equator_longitude :
    0.17
    equator_time :
    2023-11-23T10:30:01.764000Z
    geospatial_lat_max :
    78.27206799999999
    geospatial_lat_min :
    -78.271942
    geospatial_lon_max :
    83.89423599999998
    geospatial_lon_min :
    276.449703
    good_ocean_data_percent :
    62.825390889756235
    history :
    2023-11-25T21:21:19Z : Creation
    institution :
    CNES
    left_first_latitude :
    -77.05370099999999
    left_first_longitude :
    276.469074
    left_last_latitude :
    78.27200599999999
    left_last_longitude :
    83.89423599999999
    pass_number :
    1
    pge_name :
    PGE_L2_LR_SSH
    pge_version :
    5.0.2
    platform :
    SWOT
    product_file_id :
    Expert
    product_version :
    01
    reference_document :
    D-56407_SWOT_Product_Description_L2_LR_SSH
    references :
    V1.2.1
    right_first_latitude :
    -78.27186999999999
    right_first_longitude :
    276.449703
    right_last_latitude :
    77.053837
    right_last_longitude :
    83.87640999999999
    short_name :
    L2_LR_SSH
    source :
    Ka-band radar interferometer
    ssha_variance :
    0.0860590883812041
    time_coverage_end :
    2023-11-23T10:55:43.756871
    time_coverage_start :
    2023-11-23T10:04:15.708763
    title :
    Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
    transmit_antenna :
    minus_y
    wavelength :
    0.008385803020979021
    xref_dac_files :
    SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000
    xref_geco_database_version :
    v102
    xref_gim_files :
    JPLQ3270.23I
    xref_int_lr_xover_cal_file :
    SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.nc
    xref_l1b_lr_intf_file :
    SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.nc
    xref_l2_nalt_gdr_files :
    SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.nc
    xref_l2_rad_gdr_files :
    SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.nc
    xref_meteorological_cloud_liquid_water_files :
    SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_sealevel_pressure_files :
    SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_meteorological_surface_pressure_files :
    SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000
    xref_meteorological_temperature_files :
    SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_water_vapor_files :
    SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_meteorological_wettroposphere_files :
    SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_meteorological_wind_files :
    SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000
    xref_model_significant_wave_height_files :
    SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grb
    xref_orbit_ephemeris_file :
    SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.nc
    xref_param_l2_lr_precalssh_file :
    SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.nc
    xref_pole_location_file :
    SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000
    xref_precipitation_files :
    SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb
    xref_reforbittrack_files :
    SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
    xref_sea_ice_mask_files :
    SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.nc
    xref_statickarincal_files :
    SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.nc
    xref_wave_model_files :
    SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb
  • - diff --git a/external/SWOT_to_kerchunk.html b/external/SWOT_to_kerchunk.html index 103a2bb5..d6f3036b 100644 --- a/external/SWOT_to_kerchunk.html +++ b/external/SWOT_to_kerchunk.html @@ -2,7 +2,7 @@ - + @@ -1086,7 +1086,7 @@

    Kerchunk JSON Generation

    -

    imported on: 2024-05-30

    +

    imported on: 2024-06-03

    This notebook is from a different repository in NASA’s PO.DAAC, the-coding-club.

    @@ -1136,14 +1136,13 @@

    Start Dask cluster

    client = Client()
     client
    -

    Client

    Client-28f1d48e-41d3-11ee-8aca-c62ddac59d68

    -
    +
    @@ -1168,7 +1167,7 @@

    Clus

    LocalCluster

    f1696fda

    -

    Connection method: Cluster object
    +
    @@ -1198,7 +1197,7 @@

    Sc

    Scheduler

    Scheduler-d99eecbb-b5ff-4e92-80e3-e03e51977918

    -

    Dashboard: http://127.0.0.1:8787/status
    +
    @@ -1231,7 +1230,7 @@

    Workers

    Worker: 0

    -
    Comm: tcp://127.0.0.1:33331
    +
    @@ -1264,7 +1263,7 @@

    Worker: 1

    -
    Comm: tcp://127.0.0.1:34527
    +
    @@ -1284,7 +1283,7 @@

    Comm: tcp://127.0.0.1:36915
    - +
    @@ -1297,7 +1296,7 @@

    Worker: 2

    - +
    @@ -1330,7 +1329,7 @@

    Worke

    Worker: 3

    -

    Comm: tcp://127.0.0.1:35757
    +
    @@ -1376,7 +1375,6 @@

    Worke -
    @@ -1524,7 +1522,6 @@

    Check by opening dataset

    ) data
    -
    @@ -1916,14 +1913,14 @@

    Check by opening dataset

    time_coverage_start: 2014-07-24T09:26:52.109265Z title: Level 2 Low Rate Sea Surface Height Data Prod... wavelength: 0.008385803020979

    Comm: tcp://127.0.0.1:36783
    +
    -
    +
    @@ -2016,14 +2013,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2116,14 +2113,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2216,14 +2213,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2372,14 +2369,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2476,14 +2473,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2572,14 +2569,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2668,14 +2665,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2772,14 +2769,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2876,14 +2873,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -2980,14 +2977,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3076,14 +3073,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3188,14 +3185,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3292,14 +3289,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3388,14 +3385,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3484,14 +3481,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3592,14 +3589,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3692,14 +3689,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3792,14 +3789,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3888,14 +3885,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -3992,14 +3989,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4092,14 +4089,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4196,14 +4193,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4300,14 +4297,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4400,14 +4397,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4504,14 +4501,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4608,14 +4605,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4712,14 +4709,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4816,14 +4813,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -4920,14 +4917,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5024,14 +5021,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5128,14 +5125,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5236,14 +5233,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5340,14 +5337,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5444,14 +5441,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5540,14 +5537,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5636,14 +5633,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5732,14 +5729,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5836,14 +5833,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -5940,14 +5937,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6044,14 +6041,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6140,14 +6137,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6236,14 +6233,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6332,14 +6329,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6416,14 +6413,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6516,14 +6513,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6620,14 +6617,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6728,14 +6725,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6832,14 +6829,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -6936,14 +6933,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7040,14 +7037,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7144,14 +7141,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7244,14 +7241,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7348,14 +7345,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7452,14 +7449,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7552,14 +7549,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7652,14 +7649,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7752,14 +7749,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7852,14 +7849,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -7952,14 +7949,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8052,14 +8049,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8156,14 +8153,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8256,14 +8253,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8356,14 +8353,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8456,14 +8453,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8560,14 +8557,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8656,14 +8653,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8740,14 +8737,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8824,14 +8821,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8908,14 +8905,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -8992,14 +8989,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9076,14 +9073,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9160,14 +9157,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9260,14 +9257,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9360,14 +9357,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9460,14 +9457,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9560,14 +9557,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9656,14 +9653,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9752,14 +9749,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9848,14 +9845,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -9952,14 +9949,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10052,14 +10049,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10156,14 +10153,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10252,14 +10249,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10360,14 +10357,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10456,14 +10453,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10560,14 +10557,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10660,14 +10657,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10756,14 +10753,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10860,14 +10857,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -10964,14 +10961,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -11072,14 +11069,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -11180,14 +11177,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -11284,14 +11281,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -11380,14 +11377,14 @@

    Check by opening dataset

    -
    +
    -
    +
    @@ -11427,7 +11424,6 @@

    Check by opening dataset

  • Conventions :
    CF-1.7
    contact :
    CNES aviso@altimetry.fr, JPL podaac@podaac.jpl.nasa.gov
    cycle_number :
    5
    ellipsoid_flattening :
    0.003352810664781205
    ellipsoid_semi_major_axis :
    6378137.0
    equator_longitude :
    206.06188772087626
    equator_time :
    2014-07-24T09:52:36.962185Z
    geospatial_lat_max :
    78.29189230598696
    geospatial_lat_min :
    -78.29203183241484
    geospatial_lon_max :
    289.6585533138908
    geospatial_lon_min :
    122.7028213028531
    history :
    2021-09-10 10:00:06Z : Creation
    institution :
    CNES/JPL
    left_first_latitude :
    -77.032982418125
    left_first_longitude :
    122.7028213028531
    left_last_latitude :
    78.29189230598696
    left_last_longitude :
    289.65746162390826
    orbit_solution :
    POE
    pass_number :
    545
    platform :
    SWOT
    product_version :
    1.1.0.dev33
    reference_document :
    D-56407_SWOT_Product_Description_L2_LR_SSH
    references :
    Gaultier, L., C. Ubelmann, and L.-L. Fu, 2016: The Challenge of Using Future SWOT Data for Oceanic Field Reconstruction. J. Atmos. Oceanic Technol., 33, 119-126, doi:10.1175/jtech-d-15-0160.1. http://dx.doi.org/10.1175/JTECH-D-15-0160.1.
    right_first_latitude :
    -78.29203183241484
    right_first_longitude :
    122.70935482261133
    right_last_latitude :
    77.03284214129418
    right_last_longitude :
    289.6585533138908
    source :
    Simulate product
    time_coverage_end :
    2014-07-24T10:18:18.533147Z
    time_coverage_start :
    2014-07-24T09:26:52.109265Z
    title :
    Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
    wavelength :
    0.008385803020979
  • - diff --git a/external/Subscriber.html b/external/Subscriber.html index 9146000d..28673b2d 100644 --- a/external/Subscriber.html +++ b/external/Subscriber.html @@ -2,7 +2,7 @@ - + diff --git a/external/VisualizeDopplerScattData.html b/external/VisualizeDopplerScattData.html index a4e666e5..1beac266 100644 --- a/external/VisualizeDopplerScattData.html +++ b/external/VisualizeDopplerScattData.html @@ -2,7 +2,7 @@ - + @@ -1065,7 +1065,7 @@

    S-MODE Workshop: Science Case Study Airborne Part 2

    -

    imported on: 2024-05-30

    +

    imported on: 2024-06-03

    This notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop

    diff --git a/external/access-cloud-python.html b/external/access-cloud-python.html index fdbe0d33..660759bc 100644 --- a/external/access-cloud-python.html +++ b/external/access-cloud-python.html @@ -2,7 +2,7 @@ - + @@ -1116,7 +1116,6 @@

    Python

    -
    @@ -1498,14 +1497,14 @@

    Python

    '2022-07-18T01:00:46.684008720', ..., '2022-07-26T00:49:18.826637808', '2022-07-26T00:49:18.829449568', '2022-07-26T00:49:18.832263232'], dtype='datetime64[ns]')
  • latitude
    (delta_time)
    float64
    dask.array<chunksize=(78325,), meta=np.ndarray>
    contentType :
    physicalMeasurement
    description :
    Latitude of segment center, WGS84, North=+,
    long_name :
    Latitude
    source :
    section 3.10
    standard_name :
    latitude
    units :
    degrees_north
    valid_max :
    90.0
    valid_min :
    -90.0
    -
  • +
    -
    +
    @@ -1604,14 +1603,14 @@

    Python

    -
    +
    -
    +
    @@ -1725,14 +1724,14 @@

    Python

    -
    +
    -
    +
    @@ -1819,14 +1818,14 @@

    Python

    -
    +
    -
    +
    @@ -1913,14 +1912,14 @@

    Python

    -
    +
    -
    +
    @@ -2007,14 +2006,14 @@

    Python

    -
    +
    -
    +
    @@ -2101,14 +2100,14 @@

    Python

    -
    +
    -
    +
    @@ -2167,7 +2166,6 @@

    Python

    '2022-07-26 00:49:18.829449568', '2022-07-26 00:49:18.832263232'], dtype='datetime64[ns]', name='delta_time', length=241711, freq=None))
  • Description :
    The land_ice_height group contains the primary set of derived ATL06 products. This includes geolocation, height, and standard error and quality measures for each segment. This group is sparse, meaning that parameters are provided only for pairs of segments for which at least one beam has a valid surface-height measurement.
    data_rate :
    Data within this group are sparse. Data values are provided only for those ICESat-2 20m segments where at least one beam has a valid land ice height measurement.
  • - diff --git a/external/access-local-opendap.html b/external/access-local-opendap.html index 679fa2e7..71ca688b 100644 --- a/external/access-local-opendap.html +++ b/external/access-local-opendap.html @@ -2,7 +2,7 @@ - + diff --git a/external/access-local-python.html b/external/access-local-python.html index 6d29b44e..fe53832a 100644 --- a/external/access-local-python.html +++ b/external/access-local-python.html @@ -2,7 +2,7 @@ - + @@ -1140,7 +1140,6 @@

    earthaccess

    ds = xr.open_mfdataset(downloaded_files, group='/gt1l/land_ice_segments', engine='h5netcdf')ds
    -
    @@ -1522,14 +1521,14 @@

    earthaccess

    '2022-07-18T01:00:46.684008720', ..., '2022-07-26T00:49:18.826637808', '2022-07-26T00:49:18.829449568', '2022-07-26T00:49:18.832263232'], dtype='datetime64[ns]')
  • latitude
    (delta_time)
    float64
    dask.array<chunksize=(78325,), meta=np.ndarray>
    contentType :
    physicalMeasurement
    description :
    Latitude of segment center, WGS84, North=+,
    long_name :
    Latitude
    source :
    section 3.10
    standard_name :
    latitude
    units :
    degrees_north
    valid_max :
    90.0
    valid_min :
    -90.0
    -
  • +
    -
    +
    @@ -1628,14 +1627,14 @@

    earthaccess

    -
    +
    -
    +
    @@ -1749,14 +1748,14 @@

    earthaccess

    -
    +
    -
    +
    @@ -1843,14 +1842,14 @@

    earthaccess

    -
    +
    -
    +
    @@ -1937,14 +1936,14 @@

    earthaccess

    -
    +
    -
    +
    @@ -2031,14 +2030,14 @@

    earthaccess

    -
    +
    -
    +
    @@ -2125,14 +2124,14 @@

    earthaccess

    -
    +
    -
    +
    @@ -2191,7 +2190,6 @@

    earthaccess

    '2022-07-26 00:49:18.829449568', '2022-07-26 00:49:18.832263232'], dtype='datetime64[ns]', name='delta_time', length=241711, freq=None))
  • Description :
    The land_ice_height group contains the primary set of derived ATL06 products. This includes geolocation, height, and standard error and quality measures for each segment. This group is sparse, meaning that parameters are provided only for pairs of segments for which at least one beam has a valid surface-height measurement.
    data_rate :
    Data within this group are sparse. Data values are provided only for those ICESat-2 20m segments where at least one beam has a valid land ice height measurement.
  • - diff --git a/external/cof-zarr-reformat.html b/external/cof-zarr-reformat.html index e142f7a6..28ad4f72 100644 --- a/external/cof-zarr-reformat.html +++ b/external/cof-zarr-reformat.html @@ -2,7 +2,7 @@ - + @@ -1067,7 +1067,7 @@

    COF Zarr Access via Reformat

    -

    imported on: 2024-05-30

    +

    imported on: 2024-06-03

    This notebook is from a different repository in NASA’s PO.DAAC, ECCO.

    diff --git a/external/earthdata_search.html b/external/earthdata_search.html index 16fa968a..deea33d8 100644 --- a/external/earthdata_search.html +++ b/external/earthdata_search.html @@ -2,7 +2,7 @@ - + diff --git a/external/find_data_programmatically.html b/external/find_data_programmatically.html index f024100f..c886a668 100644 --- a/external/find_data_programmatically.html +++ b/external/find_data_programmatically.html @@ -2,7 +2,7 @@ - + diff --git a/external/insitu_dataviz_demo.html b/external/insitu_dataviz_demo.html index 7dad99cf..0138c54f 100644 --- a/external/insitu_dataviz_demo.html +++ b/external/insitu_dataviz_demo.html @@ -2,7 +2,7 @@ - + @@ -1069,7 +1069,7 @@

    S-MODE Workshop: Science Case Study In Situ

    -

    imported on: 2024-05-30

    +

    imported on: 2024-06-03

    This notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop

    diff --git a/external/read_data.html b/external/read_data.html index bfb889bc..cba75598 100644 --- a/external/read_data.html +++ b/external/read_data.html @@ -2,7 +2,7 @@ - + diff --git a/external/zarr-eosdis-store.html b/external/zarr-eosdis-store.html index bda40a9d..4cc71492 100644 --- a/external/zarr-eosdis-store.html +++ b/external/zarr-eosdis-store.html @@ -2,7 +2,7 @@ - + @@ -1058,7 +1058,7 @@

    Zarr Example

    -

    imported on: 2024-05-30

    +

    imported on: 2024-06-03

    This notebook is from NASA’s Zarr EOSDIS store notebook

    diff --git a/external/zarr_access.html b/external/zarr_access.html index f02a474f..0f0dc705 100644 --- a/external/zarr_access.html +++ b/external/zarr_access.html @@ -2,7 +2,7 @@ - + @@ -1077,7 +1077,7 @@

    Zarr Access for NetCDF4 files

    -

    imported on: 2024-05-30

    +

    imported on: 2024-06-03

    This notebook is from NASA Openscapes 2021 Cloud Hackathon Repository

    @@ -1396,7 +1396,6 @@

    ds
    -
    @@ -1776,14 +1775,14 @@

    +
    -
    +
    @@ -1872,14 +1871,14 @@

    -

    +
    -
    +
    @@ -1968,14 +1967,14 @@

    -

    +
    -
    +
    @@ -2072,14 +2071,14 @@

    -

    +
    -
    +
    @@ -2172,14 +2171,14 @@

    -

    +
    -
    +
    @@ -2268,14 +2267,14 @@

    -

    +
    -
    +
    @@ -2315,12 +2314,10 @@

    Conventions :
    CF-1.7
    title :
    Daily MUR SST, Final product
    summary :
    A merged, multi-sensor L4 Foundation SST analysis product from JPL.
    references :
    http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SST
    institution :
    Jet Propulsion Laboratory
    history :
    created at nominal 4-day latency; replaced nrt (1-day latency) version.
    comment :
    MUR = \"Multi-scale Ultra-high Resolution\"
    license :
    These data are available free of charge under data policy of JPL PO.DAAC.
    id :
    MUR-JPL-L4-GLOB-v04.1
    naming_authority :
    org.ghrsst
    product_version :
    04.1
    uuid :
    27665bc0-d5fc-11e1-9b23-0800200c9a66
    gds_version_id :
    2.0
    netcdf_version_id :
    4.1
    date_created :
    20210910T072132Z
    start_time :
    20210901T090000Z
    stop_time :
    20210901T090000Z
    time_coverage_start :
    20210831T210000Z
    time_coverage_end :
    20210901T210000Z
    file_quality_level :
    3
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
    platform :
    Terra, Aqua, GCOM-W, MetOp-A, MetOp-B, Buoys/Ships
    sensor :
    MODIS, AMSR2, AVHRR, in-situ
    Metadata_Conventions :
    Unidata Observation Dataset v1.0
    metadata_link :
    http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1
    keywords :
    Oceans > Ocean Temperature > Sea Surface Temperature
    keywords_vocabulary :
    NASA Global Change Master Directory (GCMD) Science Keywords
    standard_name_vocabulary :
    NetCDF Climate and Forecast (CF) Metadata Convention
    southernmost_latitude :
    -90.0
    northernmost_latitude :
    90.0
    westernmost_longitude :
    -180.0
    easternmost_longitude :
    180.0
    spatial_resolution :
    0.01 degrees
    geospatial_lat_units :
    degrees north
    geospatial_lat_resolution :
    0.009999999776
    geospatial_lon_units :
    degrees east
    geospatial_lon_resolution :
    0.009999999776
    acknowledgment :
    Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.
    creator_name :
    JPL MUR SST project
    creator_email :
    ghrsst@podaac.jpl.nasa.gov
    creator_url :
    http://mur.jpl.nasa.gov
    project :
    NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Program
    publisher_name :
    GHRSST Project Office
    publisher_url :
    http://www.ghrsst.org
    publisher_email :
    ghrsst-po@nceo.ac.uk
    processing_level :
    L4
    cdm_data_type :
    grid
    -
    ds.analysed_sst
    -
    @@ -2686,14 +2683,14 @@

    +
    -
    +
    @@ -2734,12 +2731,10 @@

    time
    (time)
    datetime64[ns]
    2021-09-01T09:00:00
    long_name :
    reference time of sst field
    standard_name :
    time
    axis :
    T
    comment :
    Nominal time of analyzed fields
    array(['2021-09-01T09:00:00.000000000'], dtype='datetime64[ns]')
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    \"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -
    sst = ds.analysed_sst.sel(lat=lats, lon=lons)
     sst
    -
    @@ -3105,14 +3100,14 @@

    +
    -
    +
    @@ -3152,7 +3147,6 @@

    • lat
      (lat)
      float32
      41.0 41.01 41.02 ... 48.99 49.0
      long_name :
      latitude
      standard_name :
      latitude
      axis :
      Y
      units :
      degrees_north
      valid_min :
      -90.0
      valid_max :
      90.0
      comment :
      geolocations inherited from the input data without correction
      array([41.  , 41.01, 41.02, ..., 48.98, 48.99, 49.  ], dtype=float32)
    • lon
      (lon)
      float32
      -93.0 -92.99 ... -76.01 -76.0
      long_name :
      longitude
      standard_name :
      longitude
      axis :
      X
      units :
      degrees_east
      valid_min :
      -180.0
      valid_max :
      180.0
      comment :
      geolocations inherited from the input data without correction
      array([-93.  , -92.99, -92.98, ..., -76.02, -76.01, -76.  ], dtype=float32)
    • time
      (time)
      datetime64[ns]
      2021-09-01T09:00:00
      long_name :
      reference time of sst field
      standard_name :
      time
      axis :
      T
      comment :
      Nominal time of analyzed fields
      array(['2021-09-01T09:00:00.000000000'], dtype='datetime64[ns]')
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    \"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -
    sst.plot()
    @@ -3194,7 +3188,6 @@

    Aggregate and analyze 30 fil
    ds = xr.concat(datasets, 'time')
     ds
    -
    @@ -3589,14 +3582,14 @@

    Aggregate and analyze 30 fil '2021-09-27T09:00:00.000000000', '2021-09-28T09:00:00.000000000', '2021-09-29T09:00:00.000000000', '2021-09-30T09:00:00.000000000'], dtype='datetime64[ns]')

    • analysed_sst
      (time, lat, lon)
      float32
      dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>
      long_name :
      analysed sea surface temperature
      standard_name :
      sea_surface_foundation_temperature
      units :
      kelvin
      valid_min :
      -32767
      valid_max :
      32767
      comment :
      \"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
      source :
      MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
      -
  • +
    -
    +
    @@ -3685,14 +3678,14 @@

    Aggregate and analyze 30 fil
    -

    +
    -
    +
    @@ -3781,14 +3774,14 @@

    Aggregate and analyze 30 fil
    -

    +
    -
    +
    @@ -3885,14 +3878,14 @@

    Aggregate and analyze 30 fil
    -

    +
    -
    +
    @@ -3985,14 +3978,14 @@

    Aggregate and analyze 30 fil
    -

    +
    -
    +
    @@ -4081,14 +4074,14 @@

    Aggregate and analyze 30 fil
    -

    +
    -
    +
    @@ -4128,14 +4121,12 @@

    Aggregate and analyze 30 fil
  • Conventions :
    CF-1.7
    title :
    Daily MUR SST, Final product
    summary :
    A merged, multi-sensor L4 Foundation SST analysis product from JPL.
    references :
    http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SST
    institution :
    Jet Propulsion Laboratory
    history :
    created at nominal 4-day latency; replaced nrt (1-day latency) version.
    comment :
    MUR = \"Multi-scale Ultra-high Resolution\"
    license :
    These data are available free of charge under data policy of JPL PO.DAAC.
    id :
    MUR-JPL-L4-GLOB-v04.1
    naming_authority :
    org.ghrsst
    product_version :
    04.1
    uuid :
    27665bc0-d5fc-11e1-9b23-0800200c9a66
    gds_version_id :
    2.0
    netcdf_version_id :
    4.1
    date_created :
    20210910T072132Z
    start_time :
    20210901T090000Z
    stop_time :
    20210901T090000Z
    time_coverage_start :
    20210831T210000Z
    time_coverage_end :
    20210901T210000Z
    file_quality_level :
    3
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
    platform :
    Terra, Aqua, GCOM-W, MetOp-A, MetOp-B, Buoys/Ships
    sensor :
    MODIS, AMSR2, AVHRR, in-situ
    Metadata_Conventions :
    Unidata Observation Dataset v1.0
    metadata_link :
    http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1
    keywords :
    Oceans > Ocean Temperature > Sea Surface Temperature
    keywords_vocabulary :
    NASA Global Change Master Directory (GCMD) Science Keywords
    standard_name_vocabulary :
    NetCDF Climate and Forecast (CF) Metadata Convention
    southernmost_latitude :
    -90.0
    northernmost_latitude :
    90.0
    westernmost_longitude :
    -180.0
    easternmost_longitude :
    180.0
    spatial_resolution :
    0.01 degrees
    geospatial_lat_units :
    degrees north
    geospatial_lat_resolution :
    0.009999999776
    geospatial_lon_units :
    degrees east
    geospatial_lon_resolution :
    0.009999999776
    acknowledgment :
    Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.
    creator_name :
    JPL MUR SST project
    creator_email :
    ghrsst@podaac.jpl.nasa.gov
    creator_url :
    http://mur.jpl.nasa.gov
    project :
    NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Program
    publisher_name :
    GHRSST Project Office
    publisher_url :
    http://www.ghrsst.org
    publisher_email :
    ghrsst-po@nceo.ac.uk
    processing_level :
    L4
    cdm_data_type :
    grid
  • -

    Look at the Analysed SST variable metadata

    all_sst = ds.analysed_sst
     all_sst
    -
    @@ -4501,14 +4492,14 @@

    Aggregate and analyze 30 fil valid_max: 32767 comment: \"Final\" version using Multi-Resolution Variational Anal... source: MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, A...

    +
    -
    +
    @@ -4564,13 +4555,11 @@

    Aggregate and analyze 30 fil dtype='datetime64[ns]')
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    \"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -

    Create a dataset / variable that is only our area of interest and view its metadata

    sst = ds.analysed_sst.sel(lat=lats, lon=lons)
     sst
    -
    @@ -4936,14 +4925,14 @@

    Aggregate and analyze 30 fil valid_max: 32767 comment: \"Final\" version using Multi-Resolution Variational Anal... source: MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, A...

    +
    -
    +
    @@ -4998,7 +4987,6 @@

    Aggregate and analyze 30 fil dtype='datetime64[ns]')
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    \"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -

    XArray reads data lazily, i.e. only when our code actually needs it. Up to this point, we haven’t read any data values, only metadata. The next line will force XArray to read the portions of the source files containing our area of interest. Behind the scenes, the eosdis-zarr-store library is ensuring data is fetched as efficiently as possible.

    Note: This line isn’t strictly necessary, since XArray will automatically read the data we need the first time our code tries to use it, but calling this will make sure that we can read the data multiple times later on without re-fetching anything from the source files.

    This line will take several seconds to complete, but since it is retrieving only about 50 MB of data from 22 GB of source files, several seconds constitutes a significant time, bandwidth, and disk space savings.

    diff --git a/index.html b/index.html index e1808fe6..33dcc81e 100644 --- a/index.html +++ b/index.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/Advanced_cloud/basic_dask.html b/notebooks/Advanced_cloud/basic_dask.html index 7eb7d47c..a5af1fed 100644 --- a/notebooks/Advanced_cloud/basic_dask.html +++ b/notebooks/Advanced_cloud/basic_dask.html @@ -2,7 +2,7 @@ - + @@ -1204,7 +1204,6 @@

    1. Locate data file endpoints on the cloud and open a test file

    samplefile = xr.open_dataset(fileobjs[0], chunks='auto') # specify 'chunk' kwarg, to see memory sizes of arrays. 
     samplefile['analysed_sst']
    -
    @@ -1575,14 +1574,14 @@

    1. Locate data file endpoints on the cloud and open a test file

    * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99 * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0 Attributes: (7)
    +
    -
    +
    @@ -1639,7 +1638,6 @@

    1. Locate data file endpoints on the cloud and open a test file

    dtype='float32', name='lon', length=36000))
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    "Final" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -
    disksize_gran = round(granule_info[0].size())
     print("At " + str(disksize_gran) + " MB per file, one year's worth of data will be " + str(365*disksize_gran/1000) + " GB")
    @@ -1772,7 +1770,6 @@

    3.1 Loading data
    sstdata = xr.open_mfdataset(fileobjs[:10])
     sstdata['analysed_sst']
    -
    @@ -2143,14 +2140,14 @@

    3.1 Loading data * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99 * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0 Attributes: (7)

    +
    -
    +
    @@ -2217,14 +2214,12 @@

    3.1 Loading data dtype='float32', name='lon', length=36000))
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    "Final" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -

    Xarray has also chunked the data arrays, which is important for parallel processing. The concept of chunks is covered in the prerequisite material linked to in the header, but in short they are the subsets of data that processors will work on in parallel.

    However, note that in the above chunking strategy (defaulted to by Xarray) there are 2 hang ups. First, the time dimension has a small chunk size, which is not efficient if we are looking to perform computations primarily along that axis. Second, the chunk sizes are too small - a good rule of thumb is to make chunk sizes ~100 MB. Therefore, we rechunk to something more efficient:

    sstdata = sstdata.chunk(chunks={'lat': 1000, 'lon': 3000, 'time': 10})
     sstdata['analysed_sst']
    -
    @@ -2595,14 +2590,14 @@

    3.1 Loading data * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99 * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0 Attributes: (7)

    +
    -
    +
    @@ -2669,7 +2664,6 @@

    3.1 Loading data dtype='float32', name='lon', length=36000))
  • long_name :
    analysed sea surface temperature
    standard_name :
    sea_surface_foundation_temperature
    units :
    kelvin
    valid_min :
    -32767
    valid_max :
    32767
    comment :
    "Final" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
    source :
    MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
  • -

    3.2 Computations

    diff --git a/notebooks/Advanced_cloud/dask_delayed_01.html b/notebooks/Advanced_cloud/dask_delayed_01.html index 739247e8..e6f44e73 100644 --- a/notebooks/Advanced_cloud/dask_delayed_01.html +++ b/notebooks/Advanced_cloud/dask_delayed_01.html @@ -2,7 +2,7 @@ - + @@ -1547,7 +1547,6 @@

    Test plots

    test_allfiles = xr.open_mfdataset(fns_results, combine='nested', concat_dim='dummy_time')
     test_allfiles["corr_ssh_sst"]
    -
    @@ -1917,14 +1916,14 @@

    Test plots

    * lon (lon) float64 0.0 0.5 1.0 1.5 2.0 ... 356.5 357.0 357.5 358.0 358.5 * lat (lat) float64 -80.0 -79.5 -79.0 -78.5 -78.0 ... 78.5 79.0 79.5 80.0 Dimensions without coordinates: dummy_time

    +
    -
    +
    @@ -1968,7 +1967,6 @@

    Test plots

    dtype='float64', name='lat', length=321))
  • -
    test_allfiles["corr_ssh_sst"].mean(dim='dummy_time').plot(figsize=(8,3), vmin=-1, vmax=1, cmap='RdBu_r')
     test_allfiles.close()
    @@ -2145,7 +2143,6 @@

    Test plots

    test_allfiles = xr.open_mfdataset(fns_results, combine='nested', concat_dim='dummy_time')
     test_allfiles["corr_ssh_sst"]
    -
    @@ -2515,14 +2512,14 @@

    Test plots

    * lon (lon) float64 0.0 0.25 0.5 0.75 1.0 ... 359.0 359.2 359.5 359.8 * lat (lat) float64 -80.0 -79.75 -79.5 -79.25 ... 79.25 79.5 79.75 80.0 Dimensions without coordinates: dummy_time
    +
    -
    +
    @@ -2571,7 +2568,6 @@

    Test plots

    dtype='float64', name='lat', length=641))
  • -
    test_allfiles["corr_ssh_sst"].mean(dim='dummy_time').plot(figsize=(8,3), vmin=-1, vmax=1, cmap='RdBu_r')
     test_allfiles.close()
    diff --git a/notebooks/Cloud L2SS subset and plot - JH.html b/notebooks/Cloud L2SS subset and plot - JH.html index 176500f7..a01c2ed4 100644 --- a/notebooks/Cloud L2SS subset and plot - JH.html +++ b/notebooks/Cloud L2SS subset and plot - JH.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/DataStories/SWOTHR_Science_Application.html b/notebooks/DataStories/SWOTHR_Science_Application.html index f1341235..99a2731c 100644 --- a/notebooks/DataStories/SWOTHR_Science_Application.html +++ b/notebooks/DataStories/SWOTHR_Science_Application.html @@ -2,7 +2,7 @@ - + @@ -1752,10 +1752,9 @@

    Ag SWOT_HR_df

    -
    -
    +
    @@ -3326,7 +3325,6 @@

    Ag -
    @@ -4371,10 +4369,9 @@

    It lo
    SWOT_HR_df[SWOT_HR_df.reach_id == '73120000531']
    -
    -

    +
    @@ -5164,7 +5161,6 @@

    It lo -
    @@ -5493,10 +5489,9 @@

    It
    SWOT_HR_df[SWOT_HR_df.reach_id == '73120000131']
    -
    -

    +
    @@ -6286,7 +6281,6 @@

    It -
    @@ -7086,7 +7080,6 @@

    Open file using xar
    -
    @@ -7483,14 +7476,14 @@

    Open file using xar y_max: 4802700.0 institution: CNES product_version: 01

    +
    -
    +
    @@ -7585,14 +7578,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -7687,14 +7680,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -7793,14 +7786,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -7899,14 +7892,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -7997,14 +7990,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8099,14 +8092,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8205,14 +8198,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8311,14 +8304,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8409,14 +8402,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8511,14 +8504,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8609,14 +8602,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8711,14 +8704,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8817,14 +8810,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -8923,14 +8916,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9021,14 +9014,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9119,14 +9112,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9217,14 +9210,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9311,14 +9304,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9397,14 +9390,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9495,14 +9488,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9593,14 +9586,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9691,14 +9684,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9789,14 +9782,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9887,14 +9880,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -9997,14 +9990,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10107,14 +10100,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10205,14 +10198,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10311,14 +10304,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10409,14 +10402,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10515,14 +10508,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10617,14 +10610,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10723,14 +10716,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10829,14 +10822,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -10931,14 +10924,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -11037,14 +11030,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -11143,14 +11136,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -11249,14 +11242,14 @@

    Open file using xar
    -

    +
    -
    +
    @@ -11304,7 +11297,6 @@

    Open file using xar 4802400.0, 4802500.0, 4802600.0, 4802700.0], dtype='float64', name='y', length=1574))
  • Conventions :
    CF-1.7
    title :
    Level 2 KaRIn High Rate Raster Data Product
    source :
    Ka-band radar interferometer
    history :
    2024-02-08T18:43:05Z : Creation
    platform :
    SWOT
    references :
    V1.2.1
    reference_document :
    JPL D-56416 - Revision C - December 8, 2023
    contact :
    podaac@podaac.jpl.nasa.gov
    cycle_number :
    10
    pass_number :
    298
    scene_number :
    40
    tile_numbers :
    [78 79 80 81 78 79 80 81]
    tile_names :
    298_078L, 298_079L, 298_080L, 298_081L, 298_078R, 298_079R, 298_080R, 298_081R
    tile_polarizations :
    H, H, H, H, V, V, V, V
    coordinate_reference_system :
    Universal Transverse Mercator
    resolution :
    100.0
    short_name :
    L2_HR_Raster
    descriptor_string :
    100m_UTM18T_N_x_x_x
    crid :
    PIC0
    pge_name :
    PGE_L2_HR_RASTER
    pge_version :
    5.1.1
    time_granule_start :
    2024-02-04T15:12:19.946118Z
    time_granule_end :
    2024-02-04T15:12:41.048879Z
    time_coverage_start :
    2024-02-04T15:12:20.482977Z
    time_coverage_end :
    2024-02-04T15:12:40.507776Z
    geospatial_lon_min :
    -73.96975463204575
    geospatial_lon_max :
    -72.07746114659037
    geospatial_lat_min :
    41.95211265886055
    geospatial_lat_max :
    43.348708275316724
    left_first_longitude :
    -72.44263832068619
    left_first_latitude :
    43.348708275316724
    left_last_longitude :
    -72.07746114659037
    left_last_latitude :
    42.22719163055777
    right_first_longitude :
    -73.96975463204575
    right_first_latitude :
    43.066480708621924
    right_last_longitude :
    -73.57988117405536
    right_last_latitude :
    41.95211265886055
    xref_l2_hr_pixc_files :
    SWOT_L2_HR_PIXC_010_298_078L_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_079L_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_080L_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_081L_20240204T151239_20240204T151251_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_078R_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_079R_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_080R_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_081R_20240204T151239_20240204T151251_PIC0_01.nc
    xref_l2_hr_pixcvec_files :
    SWOT_L2_HR_PIXCVec_010_298_078L_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_079L_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_080L_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_081L_20240204T151239_20240204T151251_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_078R_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_079R_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_080R_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_081R_20240204T151239_20240204T151251_PIC0_01.nc
    xref_param_l2_hr_raster_file :
    SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
    xref_reforbittrack_files :
    SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
    utm_zone_num :
    18
    mgrs_latitude_band :
    T
    x_min :
    583900.0
    x_max :
    741200.0
    y_min :
    4645400.0
    y_max :
    4802700.0
    institution :
    CNES
    product_version :
    01
  • -
    diff --git a/notebooks/DataStories/eof_example_ersst.html b/notebooks/DataStories/eof_example_ersst.html index e9b1d024..6b70c7d3 100644 --- a/notebooks/DataStories/eof_example_ersst.html +++ b/notebooks/DataStories/eof_example_ersst.html @@ -2,7 +2,7 @@ - + @@ -1231,7 +1231,6 @@

    1.3 Load data

    Wall time: 2min 48s
    -
    @@ -1646,14 +1645,14 @@

    1.3 Load data

    cftime.Datetime360Day(2007, 11, 1, 0, 0, 0, 0, has_year_zero=True), cftime.Datetime360Day(2007, 12, 1, 0, 0, 0, 0, has_year_zero=True)], dtype=object)
    • sst
      (time, lat, lon)
      float32
      dask.array<chunksize=(1, 89, 180), meta=np.ndarray>
      long_name :
      Extended reconstructed sea surface temperature
      standard_name :
      sea_surface_temperature
      units :
      degree_C
      valid_min :
      -3.0
      valid_max :
      45.0
      -
  • +
    -
    +
    @@ -1736,14 +1735,14 @@

    1.3 Load data

    -
    +
    -
    +
    @@ -1803,7 +1802,6 @@

    1.3 Load data

    dtype='object', length=1176, calendar='360_day', freq='MS'))
  • Conventions :
    CF-1.6, ACDD-1.3
    metadata_link :
    https://doi.org/10.7289/V5T72FNM
    id :
    ersst.v5.191001
    naming_authority :
    gov.noaa.ncei
    title :
    NOAA ERSSTv5 (in situ only)
    summary :
    ERSST.v5 is developped based on v4 after revisions of 8 parameters using updated data sets and advanced knowledge of ERSST analysis
    institution :
    NOAA/NESDIS/NCEI/CCOG
    creator_name :
    Boyin Huang
    creator_email :
    boyin.huang@noaa.gov
    date_created :
    2017-06-30T12:18:00Z
    date_modified :
    2017-06-30T12:18:00Z
    product_version :
    Version 5
    history :
    Fri Jun 30 12:26:49 2017: ncatted -O -a _FillValue,ssta,o,f,-999.0 ssta.nc Version 5 based on Version 4
    creator_url :
    https://www.ncei.noaa.gov
    license :
    No constraints on data access or use
    time_coverage_start :
    1910-01-01T00:00:00Z
    time_coverage_end :
    1910-02-01T00:00:00Z
    geospatial_lon_min :
    -1.0
    geospatial_lon_max :
    359.0
    geospatial_lat_min :
    -89.0
    geospatial_lat_max :
    89.0
    geospatial_lat_units :
    degrees_north
    geospatial_lat_resolution :
    2.0
    geospatial_lon_units :
    degrees_east
    geospatial_lon_resolution :
    2.0
    spatial_resolution :
    2.0 degree grid
    cdm_data_type :
    Grid
    processing_level :
    NOAA Level 4
    standard_name_vocabulary :
    CF Standard Name Table (v40, 25 January 2017)
    keywords :
    Earth Science > Oceans > Ocean Temperature > Sea Surface Temperature
    keywords_vocabulary :
    NASA Global Change Master Directory (GCMD) Science Keywords
    project :
    NOAA Extended Reconstructed Sea Surface Temperature (ERSST)
    platform :
    Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTS
    instrument :
    Conventional thermometers
    source :
    In situ data: ICOADS R3.0 before 2015, NCEP in situ GTS from 2016 to present, and Argo SST from 1999 to present. Ice data: HadISST2 ice before 2015, and NCEP ice after 2015.
    comment :
    SSTs were observed by conventional thermometers in Buckets (in sulated or un-insulated canvas and wooded buckets), Engine Room Intakers, or floats and drifters
    references :
    Huang et al, 2017: Extended Reconstructed Sea Surface Temperatures Version 5 (ERSSTv5): Upgrades, Validations, and Intercomparisons. Journal of Climate, https://doi.org/10.1175/JCLI-D-16-0836.1
    climatology :
    Climatology is based on 1971-2000 SST, Xue, Y., T. M. Smith, and R. W. Reynolds, 2003: Interdecadal changes of 30-yr SST normals during 1871.2000. Journal of Climate, 16, 1601-1612.
  • -
    # Load the SST variable into a DataArry object containing a NumPy array:
    diff --git a/notebooks/GIS/GDAL_NetCDF_GeoTIFF.html b/notebooks/GIS/GDAL_NetCDF_GeoTIFF.html
    index 10ae43d3..0424f9c1 100644
    --- a/notebooks/GIS/GDAL_NetCDF_GeoTIFF.html
    +++ b/notebooks/GIS/GDAL_NetCDF_GeoTIFF.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/GIS/MUR_SSTA_QGIS.html b/notebooks/GIS/MUR_SSTA_QGIS.html
    index aa3483c8..02bc4459 100644
    --- a/notebooks/GIS/MUR_SSTA_QGIS.html
    +++ b/notebooks/GIS/MUR_SSTA_QGIS.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/GIS/SWOT_GISshapefiles.html b/notebooks/GIS/SWOT_GISshapefiles.html
    index 9da82c64..d12cfd3c 100644
    --- a/notebooks/GIS/SWOT_GISshapefiles.html
    +++ b/notebooks/GIS/SWOT_GISshapefiles.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    @@ -1166,10 +1166,9 @@ 

    Opening a Singl River

    -
    -
    +
    @@ -1468,7 +1467,6 @@

    Opening a Singl -

    Plotting a Shapefile

    @@ -1520,10 +1518,9 @@

    Querying a Shapefile< Query
    -
    -

    +
    @@ -1582,7 +1579,6 @@

    Querying a Shapefile< -
    fig, ax = plt.subplots(figsize=(25,15))
     Query.plot(ax=ax, legend=True)
    @@ -1603,10 +1599,9 @@ 

    WSE

    -
    -

    +
    @@ -1905,7 +1900,6 @@

    fig, ax = plt.subplots(figsize=(25,15))
     WSE.plot(ax=ax, color='black')
    diff --git a/notebooks/GIS/SWOT_datetime_GIS.html b/notebooks/GIS/SWOT_datetime_GIS.html
    index 95521947..71ff0c06 100644
    --- a/notebooks/GIS/SWOT_datetime_GIS.html
    +++ b/notebooks/GIS/SWOT_datetime_GIS.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/GIS/SWOTshp_CSVconversion.html b/notebooks/GIS/SWOTshp_CSVconversion.html
    index 12f65547..2d34a32d 100644
    --- a/notebooks/GIS/SWOTshp_CSVconversion.html
    +++ b/notebooks/GIS/SWOTshp_CSVconversion.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    @@ -1166,10 +1166,9 @@ 

    SWOT_HR_df

    -
    -

    +
    @@ -1468,7 +1467,6 @@

    Querying a Shapefile

    @@ -1478,10 +1476,9 @@

    Querying a Shapefile< reach
    -
    -

    +
    @@ -1612,13 +1609,12 @@

    Querying a Shapefile< -

    Converting to CSV

    We can convert the merged timeseries geodataframe for this reach into a csv file.

    -
    gdf.to_csv(folder / 'csv_77125000273.csv')
    +
    gdf.to_csv(folder / 'csv_7120818372.csv')
    diff --git a/notebooks/GIS/Subscriber_nc_to_tif_SWOT.html b/notebooks/GIS/Subscriber_nc_to_tif_SWOT.html index 475f36ce..99fd9540 100644 --- a/notebooks/GIS/Subscriber_nc_to_tif_SWOT.html +++ b/notebooks/GIS/Subscriber_nc_to_tif_SWOT.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/HUC Feature Translation Service Examples-updated-20210804.html b/notebooks/HUC Feature Translation Service Examples-updated-20210804.html index b210dfb1..284e2599 100644 --- a/notebooks/HUC Feature Translation Service Examples-updated-20210804.html +++ b/notebooks/HUC Feature Translation Service Examples-updated-20210804.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/Harmony API.html b/notebooks/Harmony API.html index 7c85666f..d1254460 100644 --- a/notebooks/Harmony API.html +++ b/notebooks/Harmony API.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/MODIS_L2P_SST_DataCube.html b/notebooks/MODIS_L2P_SST_DataCube.html index 3572fb48..7b380856 100644 --- a/notebooks/MODIS_L2P_SST_DataCube.html +++ b/notebooks/MODIS_L2P_SST_DataCube.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/PODAAC_CMR_Shapefile_Search_MODIS_UAT.html b/notebooks/PODAAC_CMR_Shapefile_Search_MODIS_UAT.html index 753a56a4..b2320f9a 100644 --- a/notebooks/PODAAC_CMR_Shapefile_Search_MODIS_UAT.html +++ b/notebooks/PODAAC_CMR_Shapefile_Search_MODIS_UAT.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/PODAAC_Data_Subscriber.html b/notebooks/PODAAC_Data_Subscriber.html index 777fa4a5..f7dc7654 100644 --- a/notebooks/PODAAC_Data_Subscriber.html +++ b/notebooks/PODAAC_Data_Subscriber.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/Pre-SWOT_Numerical_Simulation_Demo.html b/notebooks/Pre-SWOT_Numerical_Simulation_Demo.html index 5e1b570d..07553c26 100644 --- a/notebooks/Pre-SWOT_Numerical_Simulation_Demo.html +++ b/notebooks/Pre-SWOT_Numerical_Simulation_Demo.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/SWORD_River_Demo.html b/notebooks/SWORD_River_Demo.html index 56d5e9d7..f45b31af 100644 --- a/notebooks/SWORD_River_Demo.html +++ b/notebooks/SWORD_River_Demo.html @@ -2,7 +2,7 @@ - + @@ -1200,7 +1200,6 @@

    -
    @@ -1597,14 +1596,14 @@

    +
    -
    +
    @@ -1701,14 +1700,14 @@

    -

    +
    -
    +
    @@ -1805,14 +1804,14 @@

    -

    +
    -
    +
    @@ -1913,14 +1912,14 @@

    -

    +
    -
    +
    @@ -2021,14 +2020,14 @@

    -

    +
    -
    +
    @@ -2121,14 +2120,14 @@

    -

    +
    -
    +
    @@ -2225,14 +2224,14 @@

    -

    +
    -
    +
    @@ -2333,14 +2332,14 @@

    -

    +
    -
    +
    @@ -2441,14 +2440,14 @@

    -

    +
    -
    +
    @@ -2541,14 +2540,14 @@

    -

    +
    -
    +
    @@ -2645,14 +2644,14 @@

    -

    +
    -
    +
    @@ -2745,14 +2744,14 @@

    -

    +
    -
    +
    @@ -2849,14 +2848,14 @@

    -

    +
    -
    +
    @@ -2957,14 +2956,14 @@

    -

    +
    -
    +
    @@ -3065,14 +3064,14 @@

    -

    +
    -
    +
    @@ -3165,14 +3164,14 @@

    -

    +
    -
    +
    @@ -3265,14 +3264,14 @@

    -

    +
    -
    +
    @@ -3365,14 +3364,14 @@

    -

    +
    -
    +
    @@ -3461,14 +3460,14 @@

    -

    +
    -
    +
    @@ -3549,14 +3548,14 @@

    -

    +
    -
    +
    @@ -3649,14 +3648,14 @@

    -

    +
    -
    +
    @@ -3749,14 +3748,14 @@

    -

    +
    -
    +
    @@ -3849,14 +3848,14 @@

    -

    +
    -
    +
    @@ -3949,14 +3948,14 @@

    -

    +
    -
    +
    @@ -4049,14 +4048,14 @@

    -

    +
    -
    +
    @@ -4161,14 +4160,14 @@

    -

    +
    -
    +
    @@ -4273,14 +4272,14 @@

    -

    +
    -
    +
    @@ -4373,14 +4372,14 @@

    -

    +
    -
    +
    @@ -4481,14 +4480,14 @@

    -

    +
    -
    +
    @@ -4581,14 +4580,14 @@

    -

    +
    -
    +
    @@ -4689,14 +4688,14 @@

    -

    +
    -
    +
    @@ -4793,14 +4792,14 @@

    -

    +
    -
    +
    @@ -4901,14 +4900,14 @@

    -

    +
    -
    +
    @@ -5009,14 +5008,14 @@

    -

    +
    -
    +
    @@ -5113,14 +5112,14 @@

    -

    +
    -
    +
    @@ -5221,14 +5220,14 @@

    -

    +
    -
    +
    @@ -5329,14 +5328,14 @@

    -

    +
    -
    +
    @@ -5437,14 +5436,14 @@

    -

    +
    -
    +
    @@ -5494,7 +5493,6 @@

    Conventions :
    CF-1.7
    title :
    Level 2 KaRIn High Rate Raster Data Product
    source :
    Ka-band radar interferometer
    history :
    2023-11-30T07:08:40Z : Creation
    platform :
    SWOT
    references :
    V1.1.1
    reference_document :
    JPL D-56416 - Revision B - August 17, 2023
    contact :
    alexander.t.corben[at]jpl.nasa.gov
    cycle_number :
    7
    pass_number :
    55
    scene_number :
    73
    tile_numbers :
    [144 145 146 147 144 145 146 147]
    tile_names :
    055_144L, 055_145L, 055_146L, 055_147L, 055_144R, 055_145R, 055_146R, 055_147R
    tile_polarizations :
    V, V, V, V, H, H, H, H
    coordinate_reference_system :
    Universal Transverse Mercator
    resolution :
    250.0
    short_name :
    L2_HR_Raster
    descriptor_string :
    250m_UTM34M_N_x_x_x
    crid :
    PIC0
    pge_name :
    PGE_L2_HR_RASTER
    pge_version :
    5.0.4
    time_granule_start :
    2023-11-25T08:46:30.064537Z
    time_granule_end :
    2023-11-25T08:46:51.150152Z
    time_coverage_start :
    2023-11-25T08:46:30.594559Z
    time_coverage_end :
    2023-11-25T08:46:50.620738Z
    geospatial_lon_min :
    19.72141518983517
    geospatial_lon_max :
    21.03225044891599
    geospatial_lat_min :
    -5.810602992908104
    geospatial_lat_max :
    -4.4965880080449185
    left_first_longitude :
    19.72141518983517
    left_first_latitude :
    -5.641311173698941
    left_last_longitude :
    19.891062484099912
    left_last_latitude :
    -4.496588008044919
    right_first_longitude :
    20.86456012740915
    right_first_latitude :
    -5.810602992908102
    right_last_longitude :
    21.032250448915992
    right_last_latitude :
    -4.665287517098692
    xref_l2_hr_pixc_files :
    SWOT_L2_HR_PIXC_007_055_144L_20231125T084620_20231125T084631_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_145L_20231125T084630_20231125T084641_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_146L_20231125T084640_20231125T084651_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_147L_20231125T084650_20231125T084701_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_144R_20231125T084620_20231125T084631_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_145R_20231125T084630_20231125T084641_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_146R_20231125T084640_20231125T084651_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_147R_20231125T084650_20231125T084701_PIC0_02.nc
    xref_l2_hr_pixcvec_files :
    SWOT_L2_HR_PIXCVec_007_055_144L_20231125T084620_20231125T084631_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_145L_20231125T084630_20231125T084641_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_146L_20231125T084640_20231125T084651_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_147L_20231125T084650_20231125T084701_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_144R_20231125T084620_20231125T084631_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_145R_20231125T084630_20231125T084641_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_146R_20231125T084640_20231125T084651_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_147R_20231125T084650_20231125T084701_PIC0_01.nc
    xref_param_l2_hr_raster_file :
    SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
    xref_reforbittrack_files :
    SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
    utm_zone_num :
    34
    mgrs_latitude_band :
    M
    x_min :
    358500.0
    x_max :
    503500.0
    y_min :
    9357750.0
    y_max :
    9503000.0
    institution :
    CNES
    product_version :
    01
    -
    @@ -5529,7 +5527,6 @@

    Downloading Data on a L ds_SWOT_raster = xr.open_mfdataset(f'datasets/data_downloads/SWOT_L2_HR_Raster*', engine='h5netcdf') ds_SWOT_raster
    -
    @@ -5932,14 +5929,14 @@

    Downloading Data on a L [nan, nan, nan, ..., b'1', b'1', b'1'], [nan, nan, nan, ..., b'1', b'1', b'1'], [nan, nan, nan, ..., b'1', b'1', b'1']], dtype=object)

  • longitude
    (y, x)
    float64
    dask.array<chunksize=(1519, 1920), meta=np.ndarray>
    long_name :
    longitude (degrees East)
    standard_name :
    longitude
    grid_mapping :
    crs
    units :
    degrees_east
    valid_min :
    -180.0
    valid_max :
    180.0
    comment :
    Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.
    -
  • +
    -
    +
    @@ -6036,14 +6033,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6140,14 +6137,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6248,14 +6245,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6356,14 +6353,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6456,14 +6453,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6560,14 +6557,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6668,14 +6665,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6776,14 +6773,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6876,14 +6873,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -6980,14 +6977,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7080,14 +7077,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7184,14 +7181,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7292,14 +7289,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7400,14 +7397,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7500,14 +7497,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7600,14 +7597,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7700,14 +7697,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7796,14 +7793,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7884,14 +7881,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -7984,14 +7981,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8084,14 +8081,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8184,14 +8181,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8284,14 +8281,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8384,14 +8381,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8496,14 +8493,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8608,14 +8605,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8708,14 +8705,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8816,14 +8813,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -8916,14 +8913,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9024,14 +9021,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9128,14 +9125,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9236,14 +9233,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9344,14 +9341,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9448,14 +9445,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9556,14 +9553,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9664,14 +9661,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9772,14 +9769,14 @@

    Downloading Data on a L
    -

    +
    -
    +
    @@ -9829,7 +9826,6 @@

    Downloading Data on a L 9502250.0, 9502500.0, 9502750.0, 9503000.0], dtype='float64', name='y', length=2101))
  • Conventions :
    CF-1.7
    title :
    Level 2 KaRIn High Rate Raster Data Product
    source :
    Ka-band radar interferometer
    history :
    2023-12-03T08:26:57Z : Creation
    platform :
    SWOT
    references :
    V1.1.1
    reference_document :
    JPL D-56416 - Revision B - August 17, 2023
    contact :
    alexander.t.corben[at]jpl.nasa.gov
    cycle_number :
    7
    pass_number :
    106
    scene_number :
    43
    tile_numbers :
    [84 85 86 87 84 85 86 87]
    tile_names :
    106_084L, 106_085L, 106_086L, 106_087L, 106_084R, 106_085R, 106_086R, 106_087R
    tile_polarizations :
    V, V, V, V, H, H, H, H
    coordinate_reference_system :
    Universal Transverse Mercator
    resolution :
    100.0
    short_name :
    L2_HR_Raster
    descriptor_string :
    100m_UTM13S_N_x_x_x
    crid :
    PIC0
    pge_name :
    PGE_L2_HR_RASTER
    pge_version :
    5.0.4
    time_granule_start :
    2023-11-27T04:20:14.437610Z
    time_granule_end :
    2023-11-27T04:20:35.534188Z
    time_coverage_start :
    2023-11-27T04:20:14.980558Z
    time_coverage_end :
    2023-11-27T04:20:34.994509Z
    geospatial_lon_min :
    -107.36911163124995
    geospatial_lon_max :
    -105.59017452334454
    geospatial_lat_min :
    38.59680331004279
    geospatial_lat_max :
    39.97894754823607
    left_first_longitude :
    -105.91254270086569
    left_first_latitude :
    39.97894754823607
    left_last_longitude :
    -105.59017452334454
    left_last_latitude :
    38.852446680067644
    right_first_longitude :
    -107.36911163124995
    right_first_latitude :
    39.71714302692733
    right_last_longitude :
    -107.02548126593867
    right_last_latitude :
    38.59680331004279
    xref_l2_hr_pixc_files :
    SWOT_L2_HR_PIXC_007_106_084L_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085L_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086L_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087L_20231127T042034_20231127T042045_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_084R_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085R_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087R_20231127T042034_20231127T042045_PIC0_03.nc
    xref_l2_hr_pixcvec_files :
    SWOT_L2_HR_PIXCVec_007_106_084L_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085L_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_084R_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085R_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_087R_20231127T042034_20231127T042045_PIC0_04.nc
    xref_param_l2_hr_raster_file :
    SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
    xref_reforbittrack_files :
    SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
    utm_zone_num :
    13
    mgrs_latitude_band :
    S
    x_min :
    296900.0
    x_max :
    448800.0
    y_min :
    4274000.0
    y_max :
    4425800.0
    institution :
    CNES
    product_version :
    04
  • -

    … Continue to Science!

    diff --git a/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html b/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html index 2b5ce232..19e7188d 100644 --- a/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html +++ b/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html @@ -2,7 +2,7 @@ - + @@ -1357,10 +1357,9 @@

    argo_df[['platform_number', 'cycle_number', 'datetime', 'lon', 'lat']] #, 'measurements']]
    -
    -

    +
    @@ -1706,7 +1705,6 @@

    -

    Now plot argo profile locations on an interactive map.

    This plot uses folium/leaflet. Hover/click the clusters (which correspond to specific Argo float platforms) to zoom to the groups of individual profiles and display metadata about them:

    @@ -1756,10 +1754,9 @@

    Ref argo_df.iloc[0].measurements.describe()

    -
    -

    +
    @@ -1823,7 +1820,6 @@

    Ref -

    Plot temperature at the minimum pressure for each profile

    This cell applies a lambda over the measurements column to slice the row corresponding to the minimum pressure bin for each profile and returns the corresponding temperature measurement:

    @@ -1881,10 +1877,9 @@

    argo_skinny.describe()

    -
    -

    +
    @@ -2038,7 +2033,6 @@

    subsets_day_means.describe()
    -
    -

    +
    @@ -2823,7 +2816,6 @@
    fig, ax = plt.subplots(figsize=(16, 4))
    diff --git a/notebooks/SWOT-EA-2021/Estuary_explore_inCloud_zarr.html b/notebooks/SWOT-EA-2021/Estuary_explore_inCloud_zarr.html
    index 55138c98..ecf6f3b9 100644
    --- a/notebooks/SWOT-EA-2021/Estuary_explore_inCloud_zarr.html
    +++ b/notebooks/SWOT-EA-2021/Estuary_explore_inCloud_zarr.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/SearchDownload_SWOTviaCMR.html b/notebooks/SearchDownload_SWOTviaCMR.html
    index 0ba855b2..74e831f2 100644
    --- a/notebooks/SearchDownload_SWOTviaCMR.html
    +++ b/notebooks/SearchDownload_SWOTviaCMR.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/Tutorials_TEMPLATE.html b/notebooks/Tutorials_TEMPLATE.html
    index d4724226..ef7b1750 100644
    --- a/notebooks/Tutorials_TEMPLATE.html
    +++ b/notebooks/Tutorials_TEMPLATE.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/aws_lambda_sst/docs/documentation.html b/notebooks/aws_lambda_sst/docs/documentation.html
    index 00e90b96..e8309912 100644
    --- a/notebooks/aws_lambda_sst/docs/documentation.html
    +++ b/notebooks/aws_lambda_sst/docs/documentation.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/aws_lambda_sst/podaac-lambda-invoke-sst-global-mean.html b/notebooks/aws_lambda_sst/podaac-lambda-invoke-sst-global-mean.html
    index 7610e874..ac121e3a 100644
    --- a/notebooks/aws_lambda_sst/podaac-lambda-invoke-sst-global-mean.html
    +++ b/notebooks/aws_lambda_sst/podaac-lambda-invoke-sst-global-mean.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    @@ -1158,7 +1158,6 @@ 

    Step 3:
    data
    -
    @@ -1531,14 +1530,14 @@

    Step 3: '2022-01-03T09:00:00.000000000', ..., '2022-12-30T09:00:00.000000000', '2022-12-31T09:00:00.000000000', '2023-01-01T09:00:00.000000000'], dtype='datetime64[ns]')

    • analysed_sst
      (time)
      float64
      dask.array<chunksize=(1,), meta=np.ndarray>
      description :
      Area-weighted global mean sea surface temperature calculated using AWS Lambda
      units :
      celcius
      date_created :
      Jun-06-2023
      -
  • +
    -
    +
    @@ -1587,7 +1586,6 @@

    Step 3: dtype='datetime64[ns]', name='time', length=365, freq=None))
  • -

    Plot the data using matplotlib:

    mpl.rcParams.update({'font.size': 22})
    diff --git a/notebooks/aws_lambda_sst/sst-global-mean-exploratory.html b/notebooks/aws_lambda_sst/sst-global-mean-exploratory.html
    index cca74120..9a6d97eb 100644
    --- a/notebooks/aws_lambda_sst/sst-global-mean-exploratory.html
    +++ b/notebooks/aws_lambda_sst/sst-global-mean-exploratory.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/batch_download_podaac_data.html b/notebooks/batch_download_podaac_data.html
    index 939d4555..af64611b 100644
    --- a/notebooks/batch_download_podaac_data.html
    +++ b/notebooks/batch_download_podaac_data.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    diff --git a/notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html b/notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html
    index e6947cbd..58a60a9d 100644
    --- a/notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html
    +++ b/notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html
    @@ -2,7 +2,7 @@
     
     
     
    -
    +
     
     
     
    @@ -1161,7 +1161,6 @@ 

    Open with xarray

    -
    @@ -1562,14 +1561,14 @@

    Open with xarray

    ssha_variance: 0.4263933333980923 references: V1.2.1 equator_longitude: -5.36

    +
    -
    +
    @@ -1660,14 +1659,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -1762,14 +1761,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -1864,14 +1863,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -1977,14 +1976,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2075,14 +2074,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2177,14 +2176,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2279,14 +2278,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2373,14 +2372,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2471,14 +2470,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2573,14 +2572,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2675,14 +2674,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2777,14 +2776,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2875,14 +2874,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -2977,14 +2976,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3059,14 +3058,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3161,14 +3160,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3263,14 +3262,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3357,14 +3356,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3459,14 +3458,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3561,14 +3560,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3655,14 +3654,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3757,14 +3756,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3859,14 +3858,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -3961,14 +3960,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4063,14 +4062,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4165,14 +4164,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4267,14 +4266,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4361,14 +4360,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4463,14 +4462,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4565,14 +4564,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4663,14 +4662,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4769,14 +4768,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4871,14 +4870,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -4977,14 +4976,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5083,14 +5082,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5189,14 +5188,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5291,14 +5290,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5393,14 +5392,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5487,14 +5486,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5597,14 +5596,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5707,14 +5706,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5809,14 +5808,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -5915,14 +5914,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6017,14 +6016,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6111,14 +6110,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6205,14 +6204,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6307,14 +6306,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6409,14 +6408,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6511,14 +6510,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6609,14 +6608,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6711,14 +6710,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6809,14 +6808,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -6907,14 +6906,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7001,14 +7000,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7095,14 +7094,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7201,14 +7200,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7303,14 +7302,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7397,14 +7396,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7491,14 +7490,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7585,14 +7584,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7687,14 +7686,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7789,14 +7788,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7891,14 +7890,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -7993,14 +7992,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8095,14 +8094,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8197,14 +8196,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8299,14 +8298,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8401,14 +8400,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8503,14 +8502,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8605,14 +8604,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8707,14 +8706,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8809,14 +8808,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -8911,14 +8910,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9009,14 +9008,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9111,14 +9110,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9213,14 +9212,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9315,14 +9314,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9417,14 +9416,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9511,14 +9510,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9613,14 +9612,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9711,14 +9710,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9809,14 +9808,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -9907,14 +9906,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10009,14 +10008,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10103,14 +10102,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10209,14 +10208,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10315,14 +10314,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10417,14 +10416,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10523,14 +10522,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10621,14 +10620,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10723,14 +10722,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10825,14 +10824,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -10931,14 +10930,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11029,14 +11028,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11127,14 +11126,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11229,14 +11228,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11331,14 +11330,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11433,14 +11432,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11535,14 +11534,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11633,14 +11632,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11731,14 +11730,14 @@

    Open with xarray

    -
    +
    -
    +
    @@ -11776,7 +11775,6 @@

    Open with xarray

    • Conventions :
      CF-1.7
      title :
      Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
      institution :
      CNES
      source :
      Ka-band radar interferometer
      history :
      2024-02-03T22:27:17Z : Creation
      platform :
      SWOT
      reference_document :
      D-56407_SWOT_Product_Description_L2_LR_SSH
      contact :
      podaac@jpl.nasa.gov
      cycle_number :
      10
      pass_number :
      210
      equator_time :
      2024-02-01T11:57:39.935000Z
      short_name :
      L2_LR_SSH
      product_file_id :
      Expert
      crid :
      PIC0
      product_version :
      01
      pge_name :
      PGE_L2_LR_SSH
      pge_version :
      5.0.2
      time_coverage_start :
      2024-02-01T11:31:57.844839
      time_coverage_end :
      2024-02-01T12:23:25.880560
      geospatial_lon_min :
      270.91792399999997
      geospatial_lon_max :
      78.362457
      geospatial_lat_min :
      -78.271942
      geospatial_lat_max :
      78.27206799999999
      left_first_longitude :
      270.91792399999997
      left_first_latitude :
      78.27200599999999
      left_last_longitude :
      78.343086
      left_last_latitude :
      -77.05370099999999
      right_first_longitude :
      270.93575
      right_first_latitude :
      77.053837
      right_last_longitude :
      78.36245699999999
      right_last_latitude :
      -78.27186999999999
      wavelength :
      0.008385803020979021
      transmit_antenna :
      minus_y
      xref_l1b_lr_intf_file :
      SWOT_L1B_LR_INTF_010_210_20240201T113154_20240201T122329_PIC0_01.nc
      xref_l2_nalt_gdr_files :
      SWOT_IPN_2PfP010_209_20240201_104031_20240201_113158.nc, SWOT_IPN_2PfP010_210_20240201_113158_20240201_122325.nc, SWOT_IPN_2PfP010_211_20240201_122325_20240201_131452.nc
      xref_l2_rad_gdr_files :
      SWOT_IPRAD_2PaP010_209_20240201_104027_20240201_113202_PIC0_01.nc, SWOT_IPRAD_2PaP010_210_20240201_113154_20240201_122329_PIC0_01.nc, SWOT_IPRAD_2PaP010_211_20240201_122321_20240201_131455_PIC0_01.nc
      xref_int_lr_xover_cal_file :
      SWOT_INT_LR_XOverCal_20240131T233132_20240201T233223_PIC0_01.nc
      xref_statickarincal_files :
      SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.nc
      xref_param_l2_lr_precalssh_file :
      SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.nc
      xref_orbit_ephemeris_file :
      SWOT_POR_AXVCNE20240202_103657_20240131_225923_20240202_005923.nc
      xref_reforbittrack_files :
      SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
      xref_meteorological_sealevel_pressure_files :
      SMM_PMA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_PMA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_PMA_AXVCNE20240202_030828_20240201_180000_20240201_180000
      xref_meteorological_wettroposphere_files :
      SMM_WEA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_WEA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_WEA_AXVCNE20240202_030828_20240201_180000_20240201_180000
      xref_meteorological_wind_files :
      SMM_VWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_VWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_UWA_AXVCNE20240202_030828_20240201_180000_20240201_180000, SMM_VWA_AXVCNE20240202_030828_20240201_180000_20240201_180000
      xref_meteorological_surface_pressure_files :
      SMM_PSA_AXVCNE20240201_174042_20240201_060000_20240201_060000, SMM_PSA_AXVCNE20240201_174042_20240201_120000_20240201_120000, SMM_PSA_AXVCNE20240202_054023_20240201_180000_20240201_180000
      xref_meteorological_temperature_files :
      SMM_T2M_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_T2M_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_T2M_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
      xref_meteorological_water_vapor_files :
      SMM_CWV_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CWV_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CWV_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
      xref_meteorological_cloud_liquid_water_files :
      SMM_CLW_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CLW_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CLW_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
      xref_model_significant_wave_height_files :
      SMM_SWH_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_SWH_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_SWH_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
      xref_gim_files :
      JPLQ0320.24I
      xref_pole_location_file :
      SMM_PO1_AXXCNE20240203_020000_19900101_000000_20240801_000000
      xref_dac_files :
      SMM_MOG_AXPCNE20240201_203002_20240201_060000_20240201_060000, SMM_MOG_AXPCNE20240201_203002_20240201_120000_20240201_120000, SMM_MOG_AXPCNE20240202_074502_20240201_180000_20240201_180000
      xref_precipitation_files :
      SMM_LSR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_CRR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb
      xref_sea_ice_mask_files :
      SMM_ICS_AXFCNE20240202_042003_20240201_000000_20240201_235959.nc, SMM_ICN_AXFCNE20240202_041506_20240201_000000_20240201_235959.nc
      xref_wave_model_files :
      SMM_WMA_AXPCNE20240202_072016_20240201_030000_20240202_000000.grb
      xref_geco_database_version :
      v102
      ellipsoid_semi_major_axis :
      6378137.0
      ellipsoid_flattening :
      0.0033528106647474805
      good_ocean_data_percent :
      76.4772191457865
      ssha_variance :
      0.4263933333980923
      references :
      V1.2.1
      equator_longitude :
      -5.36
    • - @@ -11787,7 +11785,6 @@

      Cross Over Calibration Co
      ds['ssha_karin_corrected'] = ds.ssha_karin + ds.height_cor_xover
       ds.ssha_karin_corrected
      -
      @@ -12159,14 +12156,14 @@

      Cross Over Calibration Co latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray> longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray> Dimensions without coordinates: num_lines, num_pixels

      +
      -
      +
      @@ -12266,14 +12263,14 @@

      Cross Over Calibration Co
      -

      +
      -
      +
      @@ -12364,14 +12361,14 @@

      Cross Over Calibration Co
      -

      +
      -
      +
      @@ -12466,14 +12463,14 @@

      Cross Over Calibration Co
      -

      +
      -
      +
      @@ -12568,14 +12565,14 @@

      Cross Over Calibration Co
      -

      +
      -
      +
      @@ -12613,7 +12610,6 @@

      Cross Over Calibration Co
      • - @@ -12689,7 +12685,6 @@

        -
        @@ -13074,14 +13069,14 @@

        xarray.Dataset
          • time: 27927
          • time
            (time)
            float64
            7.599e+08 7.599e+08 ... 7.6e+08
            long_name :
            time in UTC
            standard_name :
            time
            calendar :
            gregorian
            units :
            seconds since 2000-01-01 00:00:00.0
            comment :
            Time of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute [leap_second] is set to the UTC time at which the leap second occurs
            tai_utc_difference :
            37.0
            leap_second :
            0000-00-00 00:00:00
            array([7.599295e+08, 7.599295e+08, 7.599295e+08, ..., 7.599603e+08,
                    7.599603e+08, 7.599603e+08])
          • latitude
            (time)
            float64
            dask.array<chunksize=(2806,), meta=np.ndarray>
            long_name :
            latitude
            standard_name :
            latitude
            units :
            degrees_north
            comment :
            Positive latitude is North latitude, negative latitude is South latitude. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products
            -

        +
        -
        +
        @@ -13164,14 +13159,14 @@

        -

        +
        -
        +
        @@ -13269,14 +13264,14 @@

        -

        +
        -
        +
        @@ -13359,14 +13354,14 @@

        -

        +
        -
        +
        @@ -13445,14 +13440,14 @@

        -

        +
        -
        +
        @@ -13531,14 +13526,14 @@

        -

        +
        -
        +
        @@ -13621,14 +13616,14 @@

        -

        +
        -
        +
        @@ -13711,14 +13706,14 @@

        -

        +
        -
        +
        @@ -13801,14 +13796,14 @@

        -

        +
        -
        +
        @@ -13891,14 +13886,14 @@

        -

        +
        -
        +
        @@ -13981,14 +13976,14 @@

        -

        +
        -
        +
        @@ -14071,14 +14066,14 @@

        -

        +
        -
        +
        @@ -14161,14 +14156,14 @@

        -

        +
        -
        +
        @@ -14251,14 +14246,14 @@

        -

        +
        -
        +
        @@ -14341,14 +14336,14 @@

        -

        +
        -
        +
        @@ -14431,14 +14426,14 @@

        -

        +
        -
        +
        @@ -14521,14 +14516,14 @@

        -

        +
        -
        +
        @@ -14611,14 +14606,14 @@

        -

        +
        -
        +
        @@ -14709,14 +14704,14 @@

        -

        +
        -
        +
        @@ -14807,14 +14802,14 @@

        -

        +
        -
        +
        @@ -14901,14 +14896,14 @@

        -

        +
        -
        +
        @@ -14995,14 +14990,14 @@

        -

        +
        -
        +
        @@ -15085,14 +15080,14 @@

        -

        +
        -
        +
        @@ -15183,14 +15178,14 @@

        -

        +
        -
        +
        @@ -15273,14 +15268,14 @@

        -

        +
        -
        +
        @@ -15371,14 +15366,14 @@

        -

        +
        -
        +
        @@ -15465,14 +15460,14 @@

        -

        +
        -
        +
        @@ -15559,14 +15554,14 @@

        -

        +
        -
        +
        @@ -15649,14 +15644,14 @@

        -

        +
        -
        +
        @@ -15739,14 +15734,14 @@

        -

        +
        -
        +
        @@ -15829,14 +15824,14 @@

        -

        +
        -
        +
        @@ -15927,14 +15922,14 @@

        -

        +
        -
        +
        @@ -16025,14 +16020,14 @@

        -

        +
        -
        +
        @@ -16079,7 +16074,6 @@

        - diff --git a/notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html b/notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html index f5edc8d1..855e365b 100644 --- a/notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html +++ b/notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html @@ -2,7 +2,7 @@ - + @@ -3040,8 +3040,7 @@

        A note on Dask

        client = Client(n_workers=4)    # Set to n workers for number of CPUs or parallel processes or set to 1 worker to run things on a single thread
         client
        -
        -
        +
        @@ -3064,7 +3063,6 @@

        A note on Dask

        -
        @@ -3227,10 +3225,9 @@

        Create the
        -
        - +
        @@ -3387,7 +3384,6 @@

        Create the -
        # Remove fill values for missing observations
         ddf = ddf.loc[(ddf["wse"] != -999999999999.0)]
        @@ -3398,10 +3394,9 @@ 

        Create the ddf.head(n=20, npartitions=len(reach_ids))

        -
        -

        +
        @@ -3558,7 +3553,6 @@

        Create the -
        # Plot results
         line_plot = ddf.hvplot(x="time_str", y="wse", by="reach_id", kind="line", persist=True)
        diff --git a/notebooks/datasets/Localmachine_SWOT_Oceanography.html b/notebooks/datasets/Localmachine_SWOT_Oceanography.html
        index bf0a139e..b02dcfde 100644
        --- a/notebooks/datasets/Localmachine_SWOT_Oceanography.html
        +++ b/notebooks/datasets/Localmachine_SWOT_Oceanography.html
        @@ -2,7 +2,7 @@
         
         
         
        -
        +
         
         
         
        @@ -1180,7 +1180,6 @@ 

        Search and Downlo ds = xr.open_mfdataset("./data_downloads/SWOT_files/SWOT_L2_LR_SSH_Expert*.nc", combine='nested', concat_dim="num_lines", decode_times=False) ds

        -
        @@ -1581,14 +1580,14 @@

        Search and Downlo ssha_variance: 0.4263933333980923 references: V1.2.1 equator_longitude: -5.36

        +
        -
        +
        @@ -1681,14 +1680,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -1785,14 +1784,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -1889,14 +1888,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2004,14 +2003,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2104,14 +2103,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2208,14 +2207,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2312,14 +2311,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2408,14 +2407,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2508,14 +2507,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2612,14 +2611,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2716,14 +2715,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2820,14 +2819,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -2920,14 +2919,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3024,14 +3023,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3108,14 +3107,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3212,14 +3211,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3316,14 +3315,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3412,14 +3411,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3516,14 +3515,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3620,14 +3619,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3716,14 +3715,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3820,14 +3819,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -3924,14 +3923,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4028,14 +4027,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4132,14 +4131,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4236,14 +4235,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4340,14 +4339,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4436,14 +4435,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4540,14 +4539,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4644,14 +4643,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4744,14 +4743,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4852,14 +4851,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -4956,14 +4955,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5064,14 +5063,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5172,14 +5171,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5280,14 +5279,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5384,14 +5383,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5488,14 +5487,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5584,14 +5583,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5696,14 +5695,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5808,14 +5807,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -5912,14 +5911,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6020,14 +6019,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6124,14 +6123,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6220,14 +6219,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6316,14 +6315,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6420,14 +6419,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6524,14 +6523,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6628,14 +6627,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6728,14 +6727,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6832,14 +6831,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -6932,14 +6931,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7032,14 +7031,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7128,14 +7127,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7224,14 +7223,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7332,14 +7331,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7436,14 +7435,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7532,14 +7531,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7628,14 +7627,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7724,14 +7723,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7828,14 +7827,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -7932,14 +7931,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8036,14 +8035,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8140,14 +8139,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8244,14 +8243,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8348,14 +8347,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8452,14 +8451,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8556,14 +8555,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8660,14 +8659,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8764,14 +8763,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8868,14 +8867,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -8972,14 +8971,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9076,14 +9075,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9176,14 +9175,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9280,14 +9279,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9384,14 +9383,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9488,14 +9487,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9592,14 +9591,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9688,14 +9687,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9792,14 +9791,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9892,14 +9891,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -9992,14 +9991,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10092,14 +10091,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10196,14 +10195,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10292,14 +10291,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10400,14 +10399,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10508,14 +10507,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10612,14 +10611,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10720,14 +10719,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10820,14 +10819,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -10924,14 +10923,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11028,14 +11027,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11136,14 +11135,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11236,14 +11235,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11336,14 +11335,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11440,14 +11439,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11544,14 +11543,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11648,14 +11647,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11752,14 +11751,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11852,14 +11851,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11952,14 +11951,14 @@

        Search and Downlo
        -

        +
        -
        +
        @@ -11999,7 +11998,6 @@

        Search and Downlo
        • Conventions :
          CF-1.7
          title :
          Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
          institution :
          CNES
          source :
          Ka-band radar interferometer
          history :
          2024-02-03T22:27:17Z : Creation
          platform :
          SWOT
          reference_document :
          D-56407_SWOT_Product_Description_L2_LR_SSH
          contact :
          podaac@jpl.nasa.gov
          cycle_number :
          10
          pass_number :
          210
          equator_time :
          2024-02-01T11:57:39.935000Z
          short_name :
          L2_LR_SSH
          product_file_id :
          Expert
          crid :
          PIC0
          product_version :
          01
          pge_name :
          PGE_L2_LR_SSH
          pge_version :
          5.0.2
          time_coverage_start :
          2024-02-01T11:31:57.844839
          time_coverage_end :
          2024-02-01T12:23:25.880560
          geospatial_lon_min :
          270.91792399999997
          geospatial_lon_max :
          78.362457
          geospatial_lat_min :
          -78.271942
          geospatial_lat_max :
          78.27206799999999
          left_first_longitude :
          270.91792399999997
          left_first_latitude :
          78.27200599999999
          left_last_longitude :
          78.343086
          left_last_latitude :
          -77.05370099999999
          right_first_longitude :
          270.93575
          right_first_latitude :
          77.053837
          right_last_longitude :
          78.36245699999999
          right_last_latitude :
          -78.27186999999999
          wavelength :
          0.008385803020979021
          transmit_antenna :
          minus_y
          xref_l1b_lr_intf_file :
          SWOT_L1B_LR_INTF_010_210_20240201T113154_20240201T122329_PIC0_01.nc
          xref_l2_nalt_gdr_files :
          SWOT_IPN_2PfP010_209_20240201_104031_20240201_113158.nc, SWOT_IPN_2PfP010_210_20240201_113158_20240201_122325.nc, SWOT_IPN_2PfP010_211_20240201_122325_20240201_131452.nc
          xref_l2_rad_gdr_files :
          SWOT_IPRAD_2PaP010_209_20240201_104027_20240201_113202_PIC0_01.nc, SWOT_IPRAD_2PaP010_210_20240201_113154_20240201_122329_PIC0_01.nc, SWOT_IPRAD_2PaP010_211_20240201_122321_20240201_131455_PIC0_01.nc
          xref_int_lr_xover_cal_file :
          SWOT_INT_LR_XOverCal_20240131T233132_20240201T233223_PIC0_01.nc
          xref_statickarincal_files :
          SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.nc
          xref_param_l2_lr_precalssh_file :
          SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.nc
          xref_orbit_ephemeris_file :
          SWOT_POR_AXVCNE20240202_103657_20240131_225923_20240202_005923.nc
          xref_reforbittrack_files :
          SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
          xref_meteorological_sealevel_pressure_files :
          SMM_PMA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_PMA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_PMA_AXVCNE20240202_030828_20240201_180000_20240201_180000
          xref_meteorological_wettroposphere_files :
          SMM_WEA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_WEA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_WEA_AXVCNE20240202_030828_20240201_180000_20240201_180000
          xref_meteorological_wind_files :
          SMM_VWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_VWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_UWA_AXVCNE20240202_030828_20240201_180000_20240201_180000, SMM_VWA_AXVCNE20240202_030828_20240201_180000_20240201_180000
          xref_meteorological_surface_pressure_files :
          SMM_PSA_AXVCNE20240201_174042_20240201_060000_20240201_060000, SMM_PSA_AXVCNE20240201_174042_20240201_120000_20240201_120000, SMM_PSA_AXVCNE20240202_054023_20240201_180000_20240201_180000
          xref_meteorological_temperature_files :
          SMM_T2M_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_T2M_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_T2M_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
          xref_meteorological_water_vapor_files :
          SMM_CWV_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CWV_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CWV_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
          xref_meteorological_cloud_liquid_water_files :
          SMM_CLW_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CLW_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CLW_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
          xref_model_significant_wave_height_files :
          SMM_SWH_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_SWH_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_SWH_AXPCNE20240202_054023_20240201_180000_20240201_180000.grb
          xref_gim_files :
          JPLQ0320.24I
          xref_pole_location_file :
          SMM_PO1_AXXCNE20240203_020000_19900101_000000_20240801_000000
          xref_dac_files :
          SMM_MOG_AXPCNE20240201_203002_20240201_060000_20240201_060000, SMM_MOG_AXPCNE20240201_203002_20240201_120000_20240201_120000, SMM_MOG_AXPCNE20240202_074502_20240201_180000_20240201_180000
          xref_precipitation_files :
          SMM_LSR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_CRR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb
          xref_sea_ice_mask_files :
          SMM_ICS_AXFCNE20240202_042003_20240201_000000_20240201_235959.nc, SMM_ICN_AXFCNE20240202_041506_20240201_000000_20240201_235959.nc
          xref_wave_model_files :
          SMM_WMA_AXPCNE20240202_072016_20240201_030000_20240202_000000.grb
          xref_geco_database_version :
          v102
          ellipsoid_semi_major_axis :
          6378137.0
          ellipsoid_flattening :
          0.0033528106647474805
          good_ocean_data_percent :
          76.4772191457865
          ssha_variance :
          0.4263933333980923
          references :
          V1.2.1
          equator_longitude :
          -5.36
        • - @@ -12010,7 +12008,6 @@

          Cross Over Calibration Co
          ds['ssha_karin_corrected'] = ds.ssha_karin + ds.height_cor_xover
           ds.ssha_karin_corrected
          -
          @@ -12382,14 +12379,14 @@

          Cross Over Calibration Co latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray> longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray> Dimensions without coordinates: num_lines, num_pixels

          +
          -
          +
          @@ -12491,14 +12488,14 @@

          Cross Over Calibration Co
          -

          +
          -
          +
          @@ -12591,14 +12588,14 @@

          Cross Over Calibration Co
          -

          +
          -
          +
          @@ -12695,14 +12692,14 @@

          Cross Over Calibration Co
          -

          +
          -
          +
          @@ -12799,14 +12796,14 @@

          Cross Over Calibration Co
          -

          +
          -
          +
          @@ -12846,7 +12843,6 @@

          Cross Over Calibration Co
          • - @@ -12929,7 +12925,6 @@

            Search and Download Data!

            ds_nadir = xr.open_mfdataset("./data_downloads/SWOT_files/SWOT_IPR_*.nc", combine='nested', concat_dim="time", decode_times=False, engine='h5netcdf', group='data_01')ds_nadir
            -
            @@ -13314,14 +13309,14 @@

            Search and Download Data!

            rad_water_vapor (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray> rad_cloud_liquid_water (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>
            +
            -
            +
            @@ -13406,14 +13401,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -13513,14 +13508,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -13605,14 +13600,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -13693,14 +13688,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -13781,14 +13776,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -13873,14 +13868,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -13965,14 +13960,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14057,14 +14052,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14149,14 +14144,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14241,14 +14236,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14333,14 +14328,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14425,14 +14420,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14517,14 +14512,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14609,14 +14604,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14701,14 +14696,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14793,14 +14788,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14885,14 +14880,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -14985,14 +14980,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15085,14 +15080,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15181,14 +15176,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15277,14 +15272,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15369,14 +15364,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15469,14 +15464,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15561,14 +15556,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15661,14 +15656,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15757,14 +15752,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15853,14 +15848,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -15945,14 +15940,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -16037,14 +16032,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -16129,14 +16124,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -16229,14 +16224,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -16329,14 +16324,14 @@

            Search and Download Data!

            -
            +
            -
            +
            @@ -16385,7 +16380,6 @@

            Search and Download Data!

            759960321.201498, 759960322.3033671, 759960323.4052382, 759960324.5071082], dtype='float64', name='time', length=25125))
          • - diff --git a/notebooks/datasets/MUR_SST_Washington_Comparison.html b/notebooks/datasets/MUR_SST_Washington_Comparison.html index d5033357..0eba2e4d 100644 --- a/notebooks/datasets/MUR_SST_Washington_Comparison.html +++ b/notebooks/datasets/MUR_SST_Washington_Comparison.html @@ -2,7 +2,7 @@ - + @@ -3053,7 +3053,6 @@

            Access and Visua
            -
            @@ -3489,14 +3488,14 @@

            Access and Visua '2012-08-19T09:00:00.000000000', '2012-08-20T09:00:00.000000000'], dtype='datetime64[ns]')

          • lat
            (lat)
            float32
            -89.99 -89.98 ... 89.98 89.99
            long_name :
            latitude
            standard_name :
            latitude
            axis :
            Y
            units :
            degrees_north
            valid_min :
            -90.0
            valid_max :
            90.0
            comment :
            none
            array([-89.99, -89.98, -89.97, ...,  89.97,  89.98,  89.99], dtype=float32)
          • lon
            (lon)
            float32
            -180.0 -180.0 ... 180.0 180.0
            long_name :
            longitude
            standard_name :
            longitude
            axis :
            X
            units :
            degrees_east
            valid_min :
            -180.0
            valid_max :
            180.0
            comment :
            none
            array([-179.99, -179.98, -179.97, ...,  179.98,  179.99,  180.  ],
                   dtype=float32)
            • analysed_sst
              (time, lat, lon)
              float32
              dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>
              long_name :
              analysed sea surface temperature
              standard_name :
              sea_surface_foundation_temperature
              units :
              kelvin
              valid_min :
              -32767
              valid_max :
              32767
              comment :
              "Final" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
              source :
              AVHRR18_G-NAVO, AVHRR19_G-NAVO, AVHRR_METOP_A-EUMETSAT, MODIS_A-JPL, MODIS_T-JPL, WSAT-REMSS, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
              -
          • +
            -
            +
            @@ -3583,14 +3582,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -3689,14 +3688,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -3791,14 +3790,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -3900,7 +3899,6 @@

            Access and Visua 180.0], dtype='float32', name='lon', length=36000))
          • Conventions :
            CF-1.5
            title :
            Daily MUR SST, Final product
            summary :
            A merged, multi-sensor L4 Foundation SST analysis product from JPL.
            references :
            http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SST
            institution :
            Jet Propulsion Laboratory
            history :
            created at nominal 4-day latency; replaced nrt (1-day latency) version.
            comment :
            MUR = "Multi-scale Ultra-high Reolution"
            license :
            These data are available free of charge under data policy of JPL PO.DAAC.
            id :
            MUR-JPL-L4-GLOB-v04.1
            naming_authority :
            org.ghrsst
            product_version :
            04.1
            uuid :
            27665bc0-d5fc-11e1-9b23-0800200c9a66
            gds_version_id :
            2.0
            netcdf_version_id :
            4.1
            date_created :
            20150711T060041Z
            start_time :
            20120521T090000Z
            stop_time :
            20120521T090000Z
            time_coverage_start :
            20120520T210000Z
            time_coverage_end :
            20120521T210000Z
            file_quality_level :
            1
            source :
            AVHRR18_G-NAVO, AVHRR19_G-NAVO, AVHRR_METOP_A-EUMETSAT, MODIS_A-JPL, MODIS_T-JPL, WSAT-REMSS, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
            platform :
            Aqua, DMSP, NOAA-POES, Suomi-NPP, Terra
            sensor :
            AMSR-E, AVHRR, MODIS, SSM/I, VIIRS, in-situ
            Metadata_Conventions :
            Unidata Observation Dataset v1.0
            metadata_link :
            http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1
            keywords :
            Oceans > Ocean Temperature > Sea Surface Temperature
            keywords_vocabulary :
            NASA Global Change Master Directory (GCMD) Science Keywords
            standard_name_vocabulary :
            NetCDF Climate and Forecast (CF) Metadata Convention
            southernmost_latitude :
            -90.0
            northernmost_latitude :
            90.0
            westernmost_longitude :
            -180.0
            easternmost_longitude :
            180.0
            spatial_resolution :
            0.01 degrees
            geospatial_lat_units :
            degrees north
            geospatial_lat_resolution :
            0.01 degrees
            geospatial_lon_units :
            degrees east
            geospatial_lon_resolution :
            0.01 degrees
            acknowledgment :
            Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.
            creator_name :
            JPL MUR SST project
            creator_email :
            ghrsst@podaac.jpl.nasa.gov
            creator_url :
            http://mur.jpl.nasa.gov
            project :
            NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Program
            publisher_name :
            GHRSST Project Office
            publisher_url :
            http://www.ghrsst.org
            publisher_email :
            ghrsst-po@nceo.ac.uk
            processing_level :
            L4
            cdm_data_type :
            grid
          • -
            # we want the sea surface temperature variable for this visualization
            @@ -3972,7 +3970,6 @@ 

            Access and Visua

            -
            @@ -4410,14 +4407,14 @@

            Access and Visua '2022-08-19T09:00:00.000000000', '2022-08-20T09:00:00.000000000'], dtype='datetime64[ns]')

          • lat
            (lat)
            float32
            -89.99 -89.98 ... 89.98 89.99
            long_name :
            latitude
            standard_name :
            latitude
            axis :
            Y
            units :
            degrees_north
            valid_min :
            -90.0
            valid_max :
            90.0
            comment :
            geolocations inherited from the input data without correction
            array([-89.99, -89.98, -89.97, ...,  89.97,  89.98,  89.99], dtype=float32)
          • lon
            (lon)
            float32
            -180.0 -180.0 ... 180.0 180.0
            long_name :
            longitude
            standard_name :
            longitude
            axis :
            X
            units :
            degrees_east
            valid_min :
            -180.0
            valid_max :
            180.0
            comment :
            geolocations inherited from the input data without correction
            array([-179.99, -179.98, -179.97, ...,  179.98,  179.99,  180.  ],
                   dtype=float32)
            • analysed_sst
              (time, lat, lon)
              float32
              dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>
              long_name :
              analysed sea surface temperature
              standard_name :
              sea_surface_foundation_temperature
              units :
              kelvin
              valid_min :
              -32767
              valid_max :
              32767
              comment :
              "Final" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
              source :
              MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
              -
          • +
            -
            +
            @@ -4504,14 +4501,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -4606,14 +4603,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -4704,14 +4701,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -4798,14 +4795,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -4892,14 +4889,14 @@

            Access and Visua
            -

            +
            -
            +
            @@ -5001,7 +4998,6 @@

            Access and Visua 180.0], dtype='float32', name='lon', length=36000))
          • Conventions :
            CF-1.7
            title :
            Daily MUR SST, Final product
            summary :
            A merged, multi-sensor L4 Foundation SST analysis product from JPL.
            references :
            http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SST
            institution :
            Jet Propulsion Laboratory
            history :
            created at nominal 4-day latency; replaced nrt (1-day latency) version.
            comment :
            MUR = "Multi-scale Ultra-high Resolution"
            license :
            These data are available free of charge under data policy of JPL PO.DAAC.
            id :
            MUR-JPL-L4-GLOB-v04.1
            naming_authority :
            org.ghrsst
            product_version :
            04.1
            uuid :
            27665bc0-d5fc-11e1-9b23-0800200c9a66
            gds_version_id :
            2.0
            netcdf_version_id :
            4.1
            date_created :
            20220530T072023Z
            start_time :
            20220521T090000Z
            stop_time :
            20220521T090000Z
            time_coverage_start :
            20220520T210000Z
            time_coverage_end :
            20220521T210000Z
            file_quality_level :
            3
            source :
            MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
            platform :
            Terra, Aqua, GCOM-W, MetOp-B, Buoys/Ships
            sensor :
            MODIS, AMSR2, AVHRR, in-situ
            Metadata_Conventions :
            Unidata Observation Dataset v1.0
            metadata_link :
            http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1
            keywords :
            Oceans > Ocean Temperature > Sea Surface Temperature
            keywords_vocabulary :
            NASA Global Change Master Directory (GCMD) Science Keywords
            standard_name_vocabulary :
            NetCDF Climate and Forecast (CF) Metadata Convention
            southernmost_latitude :
            -90.0
            northernmost_latitude :
            90.0
            westernmost_longitude :
            -180.0
            easternmost_longitude :
            180.0
            spatial_resolution :
            0.01 degrees
            geospatial_lat_units :
            degrees north
            geospatial_lat_resolution :
            0.01
            geospatial_lon_units :
            degrees east
            geospatial_lon_resolution :
            0.01
            acknowledgment :
            Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.
            creator_name :
            JPL MUR SST project
            creator_email :
            ghrsst@podaac.jpl.nasa.gov
            creator_url :
            http://mur.jpl.nasa.gov
            project :
            NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Program
            publisher_name :
            GHRSST Project Office
            publisher_url :
            http://www.ghrsst.org
            publisher_email :
            ghrsst-po@nceo.ac.uk
            processing_level :
            L4
            cdm_data_type :
            grid
          • -
            ds_2 = ds_mur_2['analysed_sst']
            diff --git a/notebooks/datasets/OISSS_L4_multimission_monthly_v1.html b/notebooks/datasets/OISSS_L4_multimission_monthly_v1.html
            index c0d50d9e..eb0132b7 100644
            --- a/notebooks/datasets/OISSS_L4_multimission_monthly_v1.html
            +++ b/notebooks/datasets/OISSS_L4_multimission_monthly_v1.html
            @@ -2,7 +2,7 @@
             
             
             
            -
            +
             
             
             
            @@ -1085,7 +1085,7 @@ 

            Direct S3 Data Access tutorial (Multi-Mission Optimally Interp
          • Data Citation (Please insert the following two citations in your reference) >1. IPRC/SOEST University of Hawaii, Manoa. 2022. Multi-Mission Optimally Interpolated Sea Surface Salinity Global Monthly Dataset V1. Ver. 1.0. PO.DAAC, CA, USA. Dataset accessed [YYYY-MM-DD] at https://doi.org/10.5067/SMP10-4UMCS >2. Melnichenko, O., P. Hacker., N. Maximenko, G. Lagerloef, and J. Potemra. 2021., 121. doi:10.1002/2015JC011343

          • Data revision history

          • -

            +
            @@ -1620,7 +1620,6 @@

            Load data = xr.open_mfdataset(fileset ,concat_dim='time',combine='nested',engine='h5netcdf') data
            -
            @@ -2059,14 +2058,14 @@

            Load '2021-05-16T00:00:00.000000000', '2021-06-16T00:00:00.000000000', '2021-07-16T00:00:00.000000000', '2021-08-16T00:00:00.000000000'], dtype='datetime64[ns]')

            • sss
              (latitude, longitude, time)
              float32
              dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>
              long_name :
              multi-mission OISSS monthly average
              standard_name :
              sea_surface_salinity
              units :
              1e-3
              valid_min :
              [0.]
              valid_max :
              [45.]
              add_factor :
              [0.]
              coverage_content_type :
              physicalMeasurement
              -
          • Version
            +
            -
            +
            @@ -2159,14 +2158,14 @@

            Load
            -

            +
            -
            +
            @@ -2263,14 +2262,14 @@

            Load
            -

            +
            -
            +
            @@ -2363,14 +2362,14 @@

            Load
            -

            +
            -
            +
            @@ -2410,7 +2409,6 @@

            Load
          • Conventions :
            CF-1.8, ACDD-1.3
            standard_name_vocabulary :
            CF Standard Name Table v27
            Title :
            Multi-Mission Optimally Interpolated Sea Surface Salinity Global Dataset V1.0 Monthly
            Short_Name :
            OISSS_L4_multimission_v1_monthly
            Version :
            V1.0
            Processing_Level :
            Level 4
            source :
            Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662
            sourse_of_input_Aquarius_SSS :
            Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5
            sourse_of_input_SMAP_SSS :
            Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.
            sourse_of_input_SMOS_SSS :
            ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/access
            platform :
            Aquarius/SAC-D, SMAP, SMOS
            instrument :
            Aquarius radiometer, SMAP radiometer, SMOS MIRAS
            Creation_Date :
            2022-02-15T02:49:51Z
            Creator_Name :
            Oleg Melnichenko
            Creator_Email :
            oleg@hawaii.edu
            Creator_URL :
            http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB
            Project :
            NASA Ocean Salinity
            Keywords :
            Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSS
            Keywords_vocabulary :
            NASA Global Change Master Directory (GCMD) Science Keywords
            Institution :
            IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CA
            Publisher_Name :
            Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank Wentz
            Publisher_Email :
            oleg@hawaii.edu
            Publisher_URL :
            http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB
            Dataset_Citation_Authors :
            Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank Wentz
            Dataset_Citation_Year :
            2021
            Dataset_Citation_Product :
            Aquarius/SMAP Sea Surface Salinity Optimum Interpolation Analysis
            Technical_Notes :
            http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdf
            year_of_observation :
            2011
            month_of_observation :
            9
            center_day_of_observation :
            16
            time_coverage_start :
            2011-09-01T12:00:00Z
            time_coverage_end :
            2011-09-30T12:00:00Z
            time_coverage_resolution :
            P1M
            cdm_data_type :
            grid
            geospatial_lat_min :
            [-90.]
            geospatial_lat_max :
            [90.]
            geospatial_lat_resolution :
            [0.25]
            geospatial_lat_units :
            degrees_north
            geospatial_lon_min :
            [-180.]
            geospatial_lon_max :
            [180.]
            geospatial_lon_resolution :
            [0.25]
            geospatial_lon_units :
            degrees_east
          • - diff --git a/notebooks/datasets/OPERA_GIS_Cloud.html b/notebooks/datasets/OPERA_GIS_Cloud.html index 4cb41717..0c27f83b 100644 --- a/notebooks/datasets/OPERA_GIS_Cloud.html +++ b/notebooks/datasets/OPERA_GIS_Cloud.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/datasets/OPERA_GIS_Notebook.html b/notebooks/datasets/OPERA_GIS_Notebook.html index de8fe051..0f90faff 100644 --- a/notebooks/datasets/OPERA_GIS_Notebook.html +++ b/notebooks/datasets/OPERA_GIS_Notebook.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/datasets/SWOTHR_localmachine.html b/notebooks/datasets/SWOTHR_localmachine.html index cf47bdb5..65cf7d5c 100644 --- a/notebooks/datasets/SWOTHR_localmachine.html +++ b/notebooks/datasets/SWOTHR_localmachine.html @@ -2,7 +2,7 @@ - + @@ -3101,10 +3101,9 @@

            Dowload, unzip SWOT_HR_shp1
            -
            -

            +
            @@ -3403,7 +3402,6 @@

            Dowload, unzip -

            Quickly plot the SWOT river data

            @@ -3493,10 +3491,9 @@

            Search for dat SWOT_HR_shp2
            -
            -

            +
            @@ -3795,7 +3792,6 @@

            Search for dat -

            Quickly plot the SWOT lakes data

            @@ -3860,7 +3856,6 @@

            Open data using xar
            ds_PIXC = xr.open_mfdataset("data_downloads/SWOT_L2_HR_PIXC_*.nc", group = 'pixel_cloud', engine='h5netcdf')
             ds_PIXC
            -
            @@ -4252,14 +4247,14 @@

            Open data using xar looks_to_efflooks: 1.5509548020673398 num_azimuth_looks: 7.0 azimuth_offset: 3

            +
            -
            +
            @@ -4356,14 +4351,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -4463,14 +4458,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -4559,14 +4554,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -4659,14 +4654,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -4759,14 +4754,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -4859,14 +4854,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -4959,14 +4954,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5055,14 +5050,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5151,14 +5146,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5251,14 +5246,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5347,14 +5342,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5451,14 +5446,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5551,14 +5546,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5651,14 +5646,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5747,14 +5742,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5851,14 +5846,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -5947,14 +5942,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6043,14 +6038,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6143,14 +6138,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6243,14 +6238,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6343,14 +6338,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6443,14 +6438,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6539,14 +6534,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6639,14 +6634,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6739,14 +6734,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6839,14 +6834,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -6939,14 +6934,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7039,14 +7034,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7139,14 +7134,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7239,14 +7234,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7335,14 +7330,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7423,14 +7418,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7519,14 +7514,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7619,14 +7614,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7715,14 +7710,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7811,14 +7806,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -7907,14 +7902,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8003,14 +7998,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8099,14 +8094,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8195,14 +8190,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8291,14 +8286,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8395,14 +8390,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8491,14 +8486,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8595,14 +8590,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8699,14 +8694,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8803,14 +8798,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -8907,14 +8902,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9007,14 +9002,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9111,14 +9106,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9215,14 +9210,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9315,14 +9310,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9427,14 +9422,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9527,14 +9522,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9627,14 +9622,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9727,14 +9722,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9827,14 +9822,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -9927,14 +9922,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -10023,14 +10018,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -10119,14 +10114,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -10215,14 +10210,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -10311,14 +10306,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -10407,14 +10402,14 @@

            Open data using xar
            -

            +
            -
            +
            @@ -10454,7 +10449,6 @@

            Open data using xar
            • description :
              cloud of geolocated interferogram pixels
              interferogram_size_azimuth :
              3279
              interferogram_size_range :
              5750
              looks_to_efflooks :
              1.5509548020673398
              num_azimuth_looks :
              7.0
              azimuth_offset :
              3
            • - @@ -10520,7 +10514,6 @@

              Open data using xarray

              ds_PIXCVEC = xr.open_mfdataset("data_downloads/SWOT_L2_HR_PIXCVec_*.nc", decode_cf=False,  engine='h5netcdf')
               ds_PIXCVEC
              -
              @@ -10916,14 +10909,14 @@

              Open data using xarray

              xref_param_l2_hr_laketile_file: SWOT_Param_L2_HR_LakeTile_20000101T00000... ellipsoid_semi_major_axis: 6378137.0 ellipsoid_flattening: 0.0033528106647474805
              +
              -
              +
              @@ -11020,14 +11013,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11124,14 +11117,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11228,14 +11221,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11332,14 +11325,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11420,14 +11413,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11508,14 +11501,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11596,14 +11589,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11684,14 +11677,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11788,14 +11781,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11892,14 +11885,14 @@

              Open data using xarray

              -
              +
              -
              +
              @@ -11939,7 +11932,6 @@

              Open data using xarray

              • Conventions :
                CF-1.7
                title :
                Level 2 KaRIn high rate pixel cloud vector attribute product
                short_name :
                L2_HR_PIXCVec
                institution :
                CNES
                source :
                Level 1B KaRIn High Rate Single Look Complex Data Product
                history :
                2023-12-03T05:59:43.712142Z: Creation
                platform :
                SWOT
                references :
                SWOT-DD-CDM-0565-CNES_SAS_Design_L2_HR_LakeSP - Revision A - 20220531
                reference_document :
                SWOT-TN-CDM-0677-CNES_Product_Description_L2_HR_PIXCVec - Revision A - 20220531
                product_version :
                V5.3.0
                crid :
                PIC0
                pge_name :
                PGE_L2_HR_LakeSP
                pge_version :
                V4.3.0
                contact :
                SWOT-contact@cnes.fr
                cycle_number :
                7
                pass_number :
                106
                tile_number :
                86
                swath_side :
                R
                tile_name :
                106_086R
                continent_id :
                NA
                continent_code :
                7
                time_granule_start :
                2023-11-27T04:20:24.437425Z
                time_granule_end :
                2023-11-27T04:20:35.530690Z
                time_coverage_start :
                2023-11-27T04:20:24Z
                time_coverage_end :
                2023-11-27T04:20:34.966118Z
                geospatial_lon_min :
                -107.2245094782927
                geospatial_lon_max :
                -106.32383090171766
                geospatial_lat_min :
                38.56164725058795
                geospatial_lat_max :
                39.320021843662694
                inner_first_longitude :
                -106.47881643041174
                inner_first_latitude :
                39.320021843662694
                inner_last_longitude :
                -106.32383090171766
                inner_last_latitude :
                38.69212711409543
                outer_first_longitude :
                -107.2245094782927
                outer_first_latitude :
                39.18406274086079
                outer_last_longitude :
                -107.04259075253788
                outer_last_latitude :
                38.56164725058795
                xref_l2_hr_pixc_file :
                SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc
                xref_l2_hr_pixcvecriver_file :
                SWOT_L2_HR_PIXCVecRiver_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc
                xref_prior_river_db_file :
                xref_prior_lake_db_file :
                SWOT_LakeDatabase_Nom_106_20000101T000000_20991231T235959_20231017T000000_v105.sqlite
                xref_reforbittrack_files :
                SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                xref_param_l2_hr_laketile_file :
                SWOT_Param_L2_HR_LakeTile_20000101T000000_20991231T235959_20230922T160000_v411.cfg
                ellipsoid_semi_major_axis :
                6378137.0
                ellipsoid_flattening :
                0.0033528106647474805
              • -
                @@ -12013,7 +12005,6 @@

                Open data with xarray

                ds_raster = xr.open_mfdataset(f'data_downloads/SWOT_L2_HR_Raster*', engine='h5netcdf')
                 ds_raster
                -
                @@ -12410,14 +12401,14 @@

                Open data with xarray

                y_max: 4425800.0 institution: CNES product_version: 04
                +
                -
                +
                @@ -12514,14 +12505,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -12618,14 +12609,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -12726,14 +12717,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -12834,14 +12825,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -12934,14 +12925,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13038,14 +13029,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13146,14 +13137,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13254,14 +13245,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13354,14 +13345,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13458,14 +13449,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13558,14 +13549,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13662,14 +13653,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13770,14 +13761,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13878,14 +13869,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -13978,14 +13969,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14078,14 +14069,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14178,14 +14169,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14274,14 +14265,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14362,14 +14353,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14462,14 +14453,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14562,14 +14553,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14662,14 +14653,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14762,14 +14753,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14862,14 +14853,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -14974,14 +14965,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15086,14 +15077,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15186,14 +15177,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15294,14 +15285,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15394,14 +15385,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15502,14 +15493,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15606,14 +15597,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15714,14 +15705,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15822,14 +15813,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -15926,14 +15917,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -16034,14 +16025,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -16142,14 +16133,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -16250,14 +16241,14 @@

                Open data with xarray

                -
                +
                -
                +
                @@ -16307,7 +16298,6 @@

                Open data with xarray

                4425500.0, 4425600.0, 4425700.0, 4425800.0], dtype='float64', name='y', length=1519))
              • Conventions :
                CF-1.7
                title :
                Level 2 KaRIn High Rate Raster Data Product
                source :
                Ka-band radar interferometer
                history :
                2023-12-03T08:26:57Z : Creation
                platform :
                SWOT
                references :
                V1.1.1
                reference_document :
                JPL D-56416 - Revision B - August 17, 2023
                contact :
                alexander.t.corben[at]jpl.nasa.gov
                cycle_number :
                7
                pass_number :
                106
                scene_number :
                43
                tile_numbers :
                [84 85 86 87 84 85 86 87]
                tile_names :
                106_084L, 106_085L, 106_086L, 106_087L, 106_084R, 106_085R, 106_086R, 106_087R
                tile_polarizations :
                V, V, V, V, H, H, H, H
                coordinate_reference_system :
                Universal Transverse Mercator
                resolution :
                100.0
                short_name :
                L2_HR_Raster
                descriptor_string :
                100m_UTM13S_N_x_x_x
                crid :
                PIC0
                pge_name :
                PGE_L2_HR_RASTER
                pge_version :
                5.0.4
                time_granule_start :
                2023-11-27T04:20:14.437610Z
                time_granule_end :
                2023-11-27T04:20:35.534188Z
                time_coverage_start :
                2023-11-27T04:20:14.980558Z
                time_coverage_end :
                2023-11-27T04:20:34.994509Z
                geospatial_lon_min :
                -107.36911163124995
                geospatial_lon_max :
                -105.59017452334454
                geospatial_lat_min :
                38.59680331004279
                geospatial_lat_max :
                39.97894754823607
                left_first_longitude :
                -105.91254270086569
                left_first_latitude :
                39.97894754823607
                left_last_longitude :
                -105.59017452334454
                left_last_latitude :
                38.852446680067644
                right_first_longitude :
                -107.36911163124995
                right_first_latitude :
                39.71714302692733
                right_last_longitude :
                -107.02548126593867
                right_last_latitude :
                38.59680331004279
                xref_l2_hr_pixc_files :
                SWOT_L2_HR_PIXC_007_106_084L_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085L_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086L_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087L_20231127T042034_20231127T042045_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_084R_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085R_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087R_20231127T042034_20231127T042045_PIC0_03.nc
                xref_l2_hr_pixcvec_files :
                SWOT_L2_HR_PIXCVec_007_106_084L_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085L_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_084R_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085R_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_087R_20231127T042034_20231127T042045_PIC0_04.nc
                xref_param_l2_hr_raster_file :
                SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
                xref_reforbittrack_files :
                SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                utm_zone_num :
                13
                mgrs_latitude_band :
                S
                x_min :
                296900.0
                x_max :
                448800.0
                y_min :
                4274000.0
                y_max :
                4425800.0
                institution :
                CNES
                product_version :
                04
              • -
                @@ -16405,7 +16395,6 @@

                Open data using xarray

                ds_SLC = xr.open_mfdataset("data_downloads/SWOT_L1B_HR_SLC*.nc", group = 'slc', engine='h5netcdf')
                 ds_SLC
                -
                @@ -16778,14 +16767,14 @@

                Open data using xarray

                slc_qual (num_lines) float32 dask.array<chunksize=(22956,), meta=np.ndarray> Attributes: description: Single look complex images for plus_y and minus_y channels
                +
                -
                +
                @@ -16874,14 +16863,14 @@

                Open data using xarray

                -
                +
                -
                +
                @@ -16978,14 +16967,14 @@

                Open data using xarray

                -
                +
                -
                +
                @@ -17025,7 +17014,6 @@

                Open data using xarray

                • description :
                  Single look complex images for plus_y and minus_y channels
                • - diff --git a/notebooks/datasets/SWOTHR_s3Access.html b/notebooks/datasets/SWOTHR_s3Access.html index 6d20fc5b..ec0085fa 100644 --- a/notebooks/datasets/SWOTHR_s3Access.html +++ b/notebooks/datasets/SWOTHR_s3Access.html @@ -2,7 +2,7 @@ - + @@ -1703,10 +1703,9 @@

                  SWOT_HR_shp1
                  -
                  -

                  +
                  @@ -3277,7 +3276,6 @@

                  Quickly plot the SWOT river data

                  @@ -3345,10 +3343,9 @@

                  SWOT_HR_shp2
                  -
                  -

                  +
                  @@ -4007,7 +4004,6 @@

                  Quickly plot the SWOT lakes data

                  @@ -4066,7 +4062,6 @@

                  Open data using xar
                  -
                  @@ -4458,14 +4453,14 @@

                  Open data using xar looks_to_efflooks: 1.5509709858820855 num_azimuth_looks: 7.0 azimuth_offset: 7

                  +
                  -
                  +
                  @@ -4560,14 +4555,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -4665,14 +4660,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -4759,14 +4754,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -4857,14 +4852,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -4955,14 +4950,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5053,14 +5048,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5151,14 +5146,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5245,14 +5240,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5339,14 +5334,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5437,14 +5432,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5531,14 +5526,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5633,14 +5628,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5731,14 +5726,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5829,14 +5824,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -5923,14 +5918,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6025,14 +6020,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6119,14 +6114,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6213,14 +6208,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6311,14 +6306,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6409,14 +6404,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6507,14 +6502,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6605,14 +6600,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6699,14 +6694,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6797,14 +6792,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6895,14 +6890,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -6993,14 +6988,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7091,14 +7086,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7189,14 +7184,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7287,14 +7282,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7385,14 +7380,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7479,14 +7474,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7565,14 +7560,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7659,14 +7654,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7757,14 +7752,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7851,14 +7846,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -7945,14 +7940,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8039,14 +8034,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8133,14 +8128,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8227,14 +8222,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8321,14 +8316,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8415,14 +8410,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8517,14 +8512,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8611,14 +8606,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8713,14 +8708,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8815,14 +8810,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -8917,14 +8912,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9019,14 +9014,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9117,14 +9112,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9219,14 +9214,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9321,14 +9316,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9419,14 +9414,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9529,14 +9524,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9627,14 +9622,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9725,14 +9720,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9823,14 +9818,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -9921,14 +9916,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10019,14 +10014,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10113,14 +10108,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10207,14 +10202,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10301,14 +10296,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10395,14 +10390,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10489,14 +10484,14 @@

                  Open data using xar
                  -

                  +
                  -
                  +
                  @@ -10534,7 +10529,6 @@

                  Open data using xar
                  • description :
                    cloud of geolocated interferogram pixels
                    interferogram_size_azimuth :
                    3278
                    interferogram_size_range :
                    5623
                    looks_to_efflooks :
                    1.5509709858820855
                    num_azimuth_looks :
                    7.0
                    azimuth_offset :
                    7
                  • - @@ -10593,7 +10587,6 @@

                    Open data using xarray

                    -
                    @@ -10989,14 +10982,14 @@

                    Open data using xarray

                    xref_param_l2_hr_laketile_file: SWOT_Param_L2_HR_LakeTile_20000101T00000... ellipsoid_semi_major_axis: 6378137.0 ellipsoid_flattening: 0.0033528106647474805
                    +
                    -
                    +
                    @@ -11091,14 +11084,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11193,14 +11186,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11295,14 +11288,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11397,14 +11390,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11483,14 +11476,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11569,14 +11562,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11655,14 +11648,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11741,14 +11734,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11843,14 +11836,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11945,14 +11938,14 @@

                    Open data using xarray

                    -
                    +
                    -
                    +
                    @@ -11990,7 +11983,6 @@

                    Open data using xarray

                    • Conventions :
                      CF-1.7
                      title :
                      Level 2 KaRIn high rate pixel cloud vector attribute product
                      short_name :
                      L2_HR_PIXCVec
                      institution :
                      CNES
                      source :
                      Level 1B KaRIn High Rate Single Look Complex Data Product
                      history :
                      2023-12-03T05:59:43.712142Z: Creation
                      platform :
                      SWOT
                      references :
                      SWOT-DD-CDM-0565-CNES_SAS_Design_L2_HR_LakeSP - Revision A - 20220531
                      reference_document :
                      SWOT-TN-CDM-0677-CNES_Product_Description_L2_HR_PIXCVec - Revision A - 20220531
                      product_version :
                      V5.3.0
                      crid :
                      PIC0
                      pge_name :
                      PGE_L2_HR_LakeSP
                      pge_version :
                      V4.3.0
                      contact :
                      SWOT-contact@cnes.fr
                      cycle_number :
                      7
                      pass_number :
                      106
                      tile_number :
                      86
                      swath_side :
                      R
                      tile_name :
                      106_086R
                      continent_id :
                      NA
                      continent_code :
                      7
                      time_granule_start :
                      2023-11-27T04:20:24.437425Z
                      time_granule_end :
                      2023-11-27T04:20:35.530690Z
                      time_coverage_start :
                      2023-11-27T04:20:24Z
                      time_coverage_end :
                      2023-11-27T04:20:34.966118Z
                      geospatial_lon_min :
                      -107.2245094782927
                      geospatial_lon_max :
                      -106.32383090171766
                      geospatial_lat_min :
                      38.56164725058795
                      geospatial_lat_max :
                      39.320021843662694
                      inner_first_longitude :
                      -106.47881643041174
                      inner_first_latitude :
                      39.320021843662694
                      inner_last_longitude :
                      -106.32383090171766
                      inner_last_latitude :
                      38.69212711409543
                      outer_first_longitude :
                      -107.2245094782927
                      outer_first_latitude :
                      39.18406274086079
                      outer_last_longitude :
                      -107.04259075253788
                      outer_last_latitude :
                      38.56164725058795
                      xref_l2_hr_pixc_file :
                      SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc
                      xref_l2_hr_pixcvecriver_file :
                      SWOT_L2_HR_PIXCVecRiver_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc
                      xref_prior_river_db_file :
                      xref_prior_lake_db_file :
                      SWOT_LakeDatabase_Nom_106_20000101T000000_20991231T235959_20231017T000000_v105.sqlite
                      xref_reforbittrack_files :
                      SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                      xref_param_l2_hr_laketile_file :
                      SWOT_Param_L2_HR_LakeTile_20000101T000000_20991231T235959_20230922T160000_v411.cfg
                      ellipsoid_semi_major_axis :
                      6378137.0
                      ellipsoid_flattening :
                      0.0033528106647474805
                    • -
                      @@ -12058,7 +12050,6 @@

                      Open data with xarray

                      -
                      @@ -12455,14 +12446,14 @@

                      Open data with xarray

                      y_max: 4425800.0 institution: CNES product_version: 04
                      +
                      -
                      +
                      @@ -12557,14 +12548,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -12659,14 +12650,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -12765,14 +12756,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -12871,14 +12862,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -12969,14 +12960,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13071,14 +13062,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13177,14 +13168,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13283,14 +13274,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13381,14 +13372,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13483,14 +13474,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13581,14 +13572,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13683,14 +13674,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13789,14 +13780,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13895,14 +13886,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -13993,14 +13984,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14091,14 +14082,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14189,14 +14180,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14283,14 +14274,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14369,14 +14360,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14467,14 +14458,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14565,14 +14556,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14663,14 +14654,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14761,14 +14752,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14859,14 +14850,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -14969,14 +14960,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15079,14 +15070,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15177,14 +15168,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15283,14 +15274,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15381,14 +15372,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15487,14 +15478,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15589,14 +15580,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15695,14 +15686,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15801,14 +15792,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -15903,14 +15894,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -16009,14 +16000,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -16115,14 +16106,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -16221,14 +16212,14 @@

                      Open data with xarray

                      -
                      +
                      -
                      +
                      @@ -16276,7 +16267,6 @@

                      Open data with xarray

                      4425500.0, 4425600.0, 4425700.0, 4425800.0], dtype='float64', name='y', length=1519))
                    • Conventions :
                      CF-1.7
                      title :
                      Level 2 KaRIn High Rate Raster Data Product
                      source :
                      Ka-band radar interferometer
                      history :
                      2023-12-03T08:26:57Z : Creation
                      platform :
                      SWOT
                      references :
                      V1.1.1
                      reference_document :
                      JPL D-56416 - Revision B - August 17, 2023
                      contact :
                      alexander.t.corben[at]jpl.nasa.gov
                      cycle_number :
                      7
                      pass_number :
                      106
                      scene_number :
                      43
                      tile_numbers :
                      [84 85 86 87 84 85 86 87]
                      tile_names :
                      106_084L, 106_085L, 106_086L, 106_087L, 106_084R, 106_085R, 106_086R, 106_087R
                      tile_polarizations :
                      V, V, V, V, H, H, H, H
                      coordinate_reference_system :
                      Universal Transverse Mercator
                      resolution :
                      100.0
                      short_name :
                      L2_HR_Raster
                      descriptor_string :
                      100m_UTM13S_N_x_x_x
                      crid :
                      PIC0
                      pge_name :
                      PGE_L2_HR_RASTER
                      pge_version :
                      5.0.4
                      time_granule_start :
                      2023-11-27T04:20:14.437610Z
                      time_granule_end :
                      2023-11-27T04:20:35.534188Z
                      time_coverage_start :
                      2023-11-27T04:20:14.980558Z
                      time_coverage_end :
                      2023-11-27T04:20:34.994509Z
                      geospatial_lon_min :
                      -107.36911163124995
                      geospatial_lon_max :
                      -105.59017452334454
                      geospatial_lat_min :
                      38.59680331004279
                      geospatial_lat_max :
                      39.97894754823607
                      left_first_longitude :
                      -105.91254270086569
                      left_first_latitude :
                      39.97894754823607
                      left_last_longitude :
                      -105.59017452334454
                      left_last_latitude :
                      38.852446680067644
                      right_first_longitude :
                      -107.36911163124995
                      right_first_latitude :
                      39.71714302692733
                      right_last_longitude :
                      -107.02548126593867
                      right_last_latitude :
                      38.59680331004279
                      xref_l2_hr_pixc_files :
                      SWOT_L2_HR_PIXC_007_106_084L_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085L_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086L_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087L_20231127T042034_20231127T042045_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_084R_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085R_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087R_20231127T042034_20231127T042045_PIC0_03.nc
                      xref_l2_hr_pixcvec_files :
                      SWOT_L2_HR_PIXCVec_007_106_084L_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085L_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_084R_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085R_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_087R_20231127T042034_20231127T042045_PIC0_04.nc
                      xref_param_l2_hr_raster_file :
                      SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
                      xref_reforbittrack_files :
                      SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                      utm_zone_num :
                      13
                      mgrs_latitude_band :
                      S
                      x_min :
                      296900.0
                      x_max :
                      448800.0
                      y_min :
                      4274000.0
                      y_max :
                      4425800.0
                      institution :
                      CNES
                      product_version :
                      04
                    • -
                      @@ -16398,7 +16388,6 @@

                      Open data using xarray

                      -
                      @@ -16771,14 +16760,14 @@

                      Open data using xarray

                      slc_qual (num_lines) float32 dask.array<chunksize=(22956,), meta=np.ndarray> Attributes: description: Single look complex images for plus_y and minus_y channels
                      +
                      -
                      +
                      @@ -16865,14 +16854,14 @@

                      Open data using xarray

                      -
                      +
                      -
                      +
                      @@ -16967,14 +16956,14 @@

                      Open data using xarray

                      -
                      +
                      -
                      +
                      @@ -17012,7 +17001,6 @@

                      Open data using xarray

                      • description :
                        Single look complex images for plus_y and minus_y channels
                      • - diff --git a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE.html b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE.html index 1c407a04..b259aea8 100644 --- a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE.html +++ b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE.html @@ -2,7 +2,7 @@ - + @@ -1092,7 +1092,7 @@

                        Summary

                        Table of Modules (Algorithms) and Discharge variables

                        The following lists the algorithms alongside their discharge variables and location in the SoS results file assuming that the SoS is an open file represented by the results variable.

                        The first six reference discharge time series for the flow law parameter estimate (FLPE) algorithms while the last six reference the Mean Optimization Integrator (MOI) results. The MOI uses a river topology to force mass conservation at confluences to produce a discharge time series for each reach-level FLPE.

                        -
                        +
                        diff --git a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges.html b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges.html index 352f84d4..1ec5ebaa 100644 --- a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges.html +++ b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges.html @@ -2,7 +2,7 @@ - + @@ -1102,7 +1102,7 @@

                        Lo

                        Table of Gauge Agencies by Continent

                        The following list the continent with associated gauge agency and group name of the gauge agency as it is stored in the SoS.

                        -

                        +
                        diff --git a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges_plot_all.html b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges_plot_all.html index 7cd0fa26..f2ad2649 100644 --- a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges_plot_all.html +++ b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges_plot_all.html @@ -2,7 +2,7 @@ - + @@ -1107,7 +1107,7 @@

                        Lo

                        Table of Gauge Agencies by Continent

                        The following list the continent with associated gauge agency and group name of the gauge agency as it is stored in the SoS.

                        -

                        +
                        diff --git a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html index 42950e50..61ba0544 100644 --- a/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html +++ b/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html @@ -2,7 +2,7 @@ - + @@ -1093,7 +1093,7 @@

                        Granule struc

                        Table of Modules (Algorithms) and Discharge variables

                        The following lists the algorithms alongside their discharge variables and location in the SoS results file assuming that the SoS is an open file represented by the results variable.

                        -

                        +
                        @@ -1578,10 +1578,9 @@

                        Loca pdf.head()
                        -
                        -

                        +
                        @@ -1621,7 +1620,6 @@

                        Loca -
                        results.close()    # Close the NetCDF dataset
                        @@ -1636,10 +1634,9 @@

                        gdf.head()
                        -
                        -

                        +
                        @@ -1794,7 +1791,6 @@

                        # Locate reach identifiers for river of interest
                         reach_mask = gdf["reach_id"].isin(reach_ids)
                        @@ -1802,10 +1798,9 @@ 

                        gdf.head()

                        -
                        -

                        +
                        @@ -1960,7 +1955,6 @@

                        # Join discharge to GeoPandas DataFrame and extract discharge and geometries
                         gdf = gdf.join(pdf.set_index("reach_id"), on="reach_id")
                        @@ -1968,10 +1962,9 @@ 

                        gdf.head()

                        -
                        -

                        +
                        @@ -2126,7 +2119,6 @@

                        Visualize mean discharge on a map

                        diff --git a/notebooks/datasets/SWOT_Raster_Notebook_cloud.html b/notebooks/datasets/SWOT_Raster_Notebook_cloud.html index f4a52d1d..b80b7d1a 100644 --- a/notebooks/datasets/SWOT_Raster_Notebook_cloud.html +++ b/notebooks/datasets/SWOT_Raster_Notebook_cloud.html @@ -2,7 +2,7 @@ - + @@ -1709,7 +1709,6 @@

                        Visualizing Mul
                        -
                        @@ -2106,14 +2105,14 @@

                        Visualizing Mul y_max: 4176900.0 institution: CNES product_version: 01

                        +
                        -
                        +
                        @@ -2208,14 +2207,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2310,14 +2309,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2416,14 +2415,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2522,14 +2521,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2620,14 +2619,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2722,14 +2721,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2828,14 +2827,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2934,14 +2933,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3032,14 +3031,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3134,14 +3133,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3232,14 +3231,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3334,14 +3333,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3440,14 +3439,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3546,14 +3545,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3644,14 +3643,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3742,14 +3741,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3840,14 +3839,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3934,14 +3933,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4020,14 +4019,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4118,14 +4117,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4216,14 +4215,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4314,14 +4313,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4412,14 +4411,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4510,14 +4509,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4620,14 +4619,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4730,14 +4729,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4828,14 +4827,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4934,14 +4933,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5032,14 +5031,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5138,14 +5137,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5240,14 +5239,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5346,14 +5345,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5452,14 +5451,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5554,14 +5553,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5660,14 +5659,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5766,14 +5765,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5872,14 +5871,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5927,7 +5926,6 @@

                        Visualizing Mul 721400.0, 721500.0, 721600.0, 721700.0], dtype='float64', name='x', length=3074))
                      • Conventions :
                        CF-1.7
                        title :
                        Level 2 KaRIn High Rate Raster Data Product
                        source :
                        Ka-band radar interferometer
                        history :
                        2024-02-05T08:37:45Z : Creation
                        platform :
                        SWOT
                        references :
                        V1.2.1
                        reference_document :
                        JPL D-56416 - Revision C - December 8, 2023
                        contact :
                        podaac@podaac.jpl.nasa.gov
                        cycle_number :
                        10
                        pass_number :
                        218
                        scene_number :
                        45
                        tile_numbers :
                        [88 89 90 91 88 89 90 91]
                        tile_names :
                        218_088L, 218_089L, 218_090L, 218_091L, 218_088R, 218_089R, 218_090R, 218_091R
                        tile_polarizations :
                        H, H, H, H, V, V, V, V
                        coordinate_reference_system :
                        Universal Transverse Mercator
                        resolution :
                        100.0
                        short_name :
                        L2_HR_Raster
                        descriptor_string :
                        100m_UTM11S_N_x_x_x
                        crid :
                        PIC0
                        pge_name :
                        PGE_L2_HR_RASTER
                        pge_version :
                        5.1.1
                        time_granule_start :
                        2024-02-01T18:38:14.266613Z
                        time_granule_end :
                        2024-02-01T18:38:35.362539Z
                        time_coverage_start :
                        2024-02-01T18:38:14.805141Z
                        time_coverage_end :
                        2024-02-01T18:38:34.816548Z
                        geospatial_lon_min :
                        -116.55823577002582
                        geospatial_lon_max :
                        -114.84459394683485
                        geospatial_lat_min :
                        36.350992807631336
                        geospatial_lat_max :
                        37.724496129136035
                        left_first_longitude :
                        -115.14314896157633
                        left_first_latitude :
                        37.724496129136035
                        left_last_longitude :
                        -114.84459394683485
                        left_last_latitude :
                        36.5951883116925
                        right_first_longitude :
                        -116.55823577002582
                        right_first_latitude :
                        37.474717676188774
                        right_last_longitude :
                        -116.24045666354958
                        right_last_latitude :
                        36.350992807631336
                        xref_l2_hr_pixc_files :
                        SWOT_L2_HR_PIXC_010_218_088L_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_089L_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_088R_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_089R_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc
                        xref_l2_hr_pixcvec_files :
                        SWOT_L2_HR_PIXCVec_010_218_088L_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_089L_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_088R_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_089R_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc
                        xref_param_l2_hr_raster_file :
                        SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
                        xref_reforbittrack_files :
                        SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                        utm_zone_num :
                        11
                        mgrs_latitude_band :
                        S
                        x_min :
                        539100.0
                        x_max :
                        692800.0
                        y_min :
                        4023100.0
                        y_max :
                        4176900.0
                        institution :
                        CNES
                        product_version :
                        01
                      • -
                        raster_plot = ds.wse.hvplot.quadmesh(x='x', y='y', rasterize=True, title=f'SWOT Raster 100m: Lake Mead Reservoir')
                        diff --git a/notebooks/datasets/SWOT_Raster_Notebook_local.html b/notebooks/datasets/SWOT_Raster_Notebook_local.html
                        index 96726a53..0682b68c 100644
                        --- a/notebooks/datasets/SWOT_Raster_Notebook_local.html
                        +++ b/notebooks/datasets/SWOT_Raster_Notebook_local.html
                        @@ -2,7 +2,7 @@
                         
                         
                         
                        -
                        +
                         
                         
                         
                        @@ -1708,7 +1708,6 @@ 

                        Visualizing Mul
                        ds = xr.open_mfdataset(file_paths, combine='nested', concat_dim='x')
                         ds
                        -
                        @@ -2105,14 +2104,14 @@

                        Visualizing Mul y_max: 4052100.0 institution: CNES product_version: 01

                        +
                        -
                        +
                        @@ -2207,14 +2206,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2309,14 +2308,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2415,14 +2414,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2521,14 +2520,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2619,14 +2618,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2721,14 +2720,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2827,14 +2826,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -2933,14 +2932,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3031,14 +3030,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3133,14 +3132,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3231,14 +3230,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3333,14 +3332,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3439,14 +3438,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3545,14 +3544,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3643,14 +3642,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3741,14 +3740,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3839,14 +3838,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -3933,14 +3932,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4019,14 +4018,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4117,14 +4116,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4215,14 +4214,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4313,14 +4312,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4411,14 +4410,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4509,14 +4508,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4619,14 +4618,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4729,14 +4728,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4827,14 +4826,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -4933,14 +4932,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5031,14 +5030,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5137,14 +5136,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5239,14 +5238,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5345,14 +5344,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5451,14 +5450,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5553,14 +5552,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5659,14 +5658,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5765,14 +5764,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5871,14 +5870,14 @@

                        Visualizing Mul
                        -

                        +
                        -
                        +
                        @@ -5926,7 +5925,6 @@

                        Visualizing Mul 692500.0, 692600.0, 692700.0, 692800.0], dtype='float64', name='x', length=3074))
                      • Conventions :
                        CF-1.7
                        title :
                        Level 2 KaRIn High Rate Raster Data Product
                        source :
                        Ka-band radar interferometer
                        history :
                        2024-02-05T08:50:33Z : Creation
                        platform :
                        SWOT
                        references :
                        V1.2.1
                        reference_document :
                        JPL D-56416 - Revision C - December 8, 2023
                        contact :
                        podaac@podaac.jpl.nasa.gov
                        cycle_number :
                        10
                        pass_number :
                        218
                        scene_number :
                        46
                        tile_numbers :
                        [90 91 92 93 90 91 92 93]
                        tile_names :
                        218_090L, 218_091L, 218_092L, 218_093L, 218_090R, 218_091R, 218_092R, 218_093R
                        tile_polarizations :
                        H, H, H, H, V, V, V, V
                        coordinate_reference_system :
                        Universal Transverse Mercator
                        resolution :
                        100.0
                        short_name :
                        L2_HR_Raster
                        descriptor_string :
                        100m_UTM11S_N_x_x_x
                        crid :
                        PIC0
                        pge_name :
                        PGE_L2_HR_RASTER
                        pge_version :
                        5.1.1
                        time_granule_start :
                        2024-02-01T18:38:34.265833Z
                        time_granule_end :
                        2024-02-01T18:38:55.360807Z
                        time_coverage_start :
                        2024-02-01T18:38:34.807712Z
                        time_coverage_end :
                        2024-02-01T18:38:54.816495Z
                        geospatial_lon_min :
                        -116.24045666354958
                        geospatial_lon_max :
                        -114.55674281329392
                        geospatial_lat_min :
                        35.225727504637376
                        geospatial_lat_max :
                        36.5951883116925
                        left_first_longitude :
                        -114.84459394683485
                        left_first_latitude :
                        36.5951883116925
                        left_last_longitude :
                        -114.55674281329392
                        left_last_latitude :
                        35.46460890403489
                        right_first_longitude :
                        -116.24045666354958
                        right_first_latitude :
                        36.350992807631336
                        right_last_longitude :
                        -115.93433361296329
                        right_last_latitude :
                        35.225727504637376
                        xref_l2_hr_pixc_files :
                        SWOT_L2_HR_PIXC_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_092L_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_093L_20240201T183854_20240201T183905_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_092R_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_093R_20240201T183854_20240201T183905_PIC0_01.nc
                        xref_l2_hr_pixcvec_files :
                        SWOT_L2_HR_PIXCVec_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_092L_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_093L_20240201T183854_20240201T183905_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_092R_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_093R_20240201T183854_20240201T183905_PIC0_01.nc
                        xref_param_l2_hr_raster_file :
                        SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdf
                        xref_reforbittrack_files :
                        SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                        utm_zone_num :
                        11
                        mgrs_latitude_band :
                        S
                        x_min :
                        568200.0
                        x_max :
                        721700.0
                        y_min :
                        3898600.0
                        y_max :
                        4052100.0
                        institution :
                        CNES
                        product_version :
                        01
                      • -
                        raster_plot = ds.wse.hvplot.quadmesh(x='x', y='y', rasterize=True, title=f'SWOT Raster 100m: Lake Mead Reservoir')
                        diff --git a/notebooks/datasets/SWOT_quality_flag_demo.html b/notebooks/datasets/SWOT_quality_flag_demo.html
                        index 8840003e..070a36eb 100644
                        --- a/notebooks/datasets/SWOT_quality_flag_demo.html
                        +++ b/notebooks/datasets/SWOT_quality_flag_demo.html
                        @@ -2,7 +2,7 @@
                         
                         
                         
                        -
                        +
                         
                         
                         
                        @@ -1073,7 +1073,7 @@ 

                        Summary:

                        Depending on the data product though, the quality flag may not end with qual, you may need to alter the code for your particular dataset. See the summary chart below.

                        Quality flags have different syntax depending on which data product is being used. If a measurement has a quality flag, it can also have a bit flag that provides the detail of why the quality flags are set as they are (see Product Description Documents (PDDs) for specific value meanings). In addition to the ’_qual’ or ’_q’ indications, ’_flag’ or ’_f’ (e.g., ‘ice_flag’) may be used in each data product to raise different flags with unique values and meanings. See specific PDDs for more information.

                        -

                        +
                        @@ -1188,7 +1188,6 @@

                        If accessin ds = xr.open_mfdataset("./data_downloads/SWOT_files/SWOT_L2_LR_SSH_Expert*.nc")#, mask_and_scale=False) ds
                        -
                        @@ -1589,14 +1588,14 @@

                        If accessin ssha_variance: 0.7787372594877449 references: V1.2.1 equator_longitude: 52.58

                        +
                        -
                        +
                        @@ -1689,14 +1688,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -1793,14 +1792,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -1897,14 +1896,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2004,14 +2003,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2096,14 +2095,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2200,14 +2199,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2304,14 +2303,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2400,14 +2399,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2500,14 +2499,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2604,14 +2603,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2708,14 +2707,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2812,14 +2811,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -2912,14 +2911,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3016,14 +3015,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3100,14 +3099,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3204,14 +3203,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3308,14 +3307,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3404,14 +3403,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3508,14 +3507,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3612,14 +3611,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3708,14 +3707,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3812,14 +3811,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -3916,14 +3915,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4020,14 +4019,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4124,14 +4123,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4228,14 +4227,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4332,14 +4331,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4428,14 +4427,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4532,14 +4531,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4636,14 +4635,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4736,14 +4735,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4844,14 +4843,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -4948,14 +4947,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5056,14 +5055,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5164,14 +5163,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5272,14 +5271,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5376,14 +5375,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5480,14 +5479,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5576,14 +5575,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5688,14 +5687,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5800,14 +5799,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -5904,14 +5903,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6012,14 +6011,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6116,14 +6115,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6212,14 +6211,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6308,14 +6307,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6412,14 +6411,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6516,14 +6515,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6620,14 +6619,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6720,14 +6719,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6824,14 +6823,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -6924,14 +6923,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7024,14 +7023,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7120,14 +7119,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7216,14 +7215,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7324,14 +7323,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7428,14 +7427,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7524,14 +7523,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7620,14 +7619,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7716,14 +7715,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7820,14 +7819,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -7924,14 +7923,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8028,14 +8027,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8132,14 +8131,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8236,14 +8235,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8340,14 +8339,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8444,14 +8443,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8548,14 +8547,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8652,14 +8651,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8756,14 +8755,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8860,14 +8859,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -8964,14 +8963,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9068,14 +9067,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9168,14 +9167,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9272,14 +9271,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9376,14 +9375,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9480,14 +9479,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9584,14 +9583,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9680,14 +9679,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9784,14 +9783,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9884,14 +9883,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -9984,14 +9983,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10084,14 +10083,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10188,14 +10187,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10284,14 +10283,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10392,14 +10391,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10500,14 +10499,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10604,14 +10603,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10712,14 +10711,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10812,14 +10811,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -10916,14 +10915,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11020,14 +11019,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11128,14 +11127,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11228,14 +11227,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11328,14 +11327,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11432,14 +11431,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11536,14 +11535,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11640,14 +11639,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11744,14 +11743,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11844,14 +11843,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11944,14 +11943,14 @@

                        If accessin
                        -

                        +
                        -
                        +
                        @@ -11991,7 +11990,6 @@

                        If accessin
                        • Conventions :
                          CF-1.7
                          title :
                          Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wave
                          institution :
                          CNES
                          source :
                          Ka-band radar interferometer
                          history :
                          2024-03-24T22:39:40Z : Creation
                          platform :
                          SWOT
                          reference_document :
                          D-56407_SWOT_Product_Description_L2_LR_SSH
                          contact :
                          podaac@jpl.nasa.gov
                          cycle_number :
                          12
                          pass_number :
                          428
                          equator_time :
                          2024-03-22T00:23:15.167000Z
                          short_name :
                          L2_LR_SSH
                          product_file_id :
                          Expert
                          crid :
                          PIC0
                          product_version :
                          01
                          pge_name :
                          PGE_L2_LR_SSH
                          pge_version :
                          5.0.2
                          time_coverage_start :
                          2024-03-21T23:57:33.259925
                          time_coverage_end :
                          2024-03-22T00:49:01.265518
                          geospatial_lon_min :
                          328.86312899999996
                          geospatial_lon_max :
                          136.307662
                          geospatial_lat_min :
                          -78.271942
                          geospatial_lat_max :
                          78.27206799999999
                          left_first_longitude :
                          328.86312899999996
                          left_first_latitude :
                          78.27200599999999
                          left_last_longitude :
                          136.288291
                          left_last_latitude :
                          -77.05370099999999
                          right_first_longitude :
                          328.880955
                          right_first_latitude :
                          77.053837
                          right_last_longitude :
                          136.307662
                          right_last_latitude :
                          -78.27186999999999
                          wavelength :
                          0.008385803020979021
                          transmit_antenna :
                          minus_y
                          xref_l1b_lr_intf_file :
                          SWOT_L1B_LR_INTF_012_428_20240321T235729_20240322T004904_PIC0_01.nc
                          xref_l2_nalt_gdr_files :
                          SWOT_IPN_2PfP012_427_20240321_230606_20240321_235733.nc, SWOT_IPN_2PfP012_428_20240321_235733_20240322_004900.nc, SWOT_IPN_2PfP012_429_20240322_004900_20240322_014027.nc
                          xref_l2_rad_gdr_files :
                          SWOT_IPRAD_2PaP012_427_20240321_230603_20240321_235737_PIC0_01.nc, SWOT_IPRAD_2PaP012_428_20240321_235729_20240322_004904_PIC0_01.nc, SWOT_IPRAD_2PaP012_429_20240322_004856_20240322_014031_PIC0_01.nc
                          xref_int_lr_xover_cal_file :
                          SWOT_INT_LR_XOverCal_20240321T235723_20240322T235815_PIC0_01.nc
                          xref_statickarincal_files :
                          SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.nc
                          xref_param_l2_lr_precalssh_file :
                          SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.nc
                          xref_orbit_ephemeris_file :
                          SWOT_POR_AXVCNE20240323_105038_20240321_225923_20240323_005923.nc
                          xref_reforbittrack_files :
                          SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt
                          xref_meteorological_sealevel_pressure_files :
                          SMM_PMA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_PMA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_PMA_AXVCNE20240322_163941_20240322_060000_20240322_060000
                          xref_meteorological_wettroposphere_files :
                          SMM_WEA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_WEA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_WEA_AXVCNE20240322_163941_20240322_060000_20240322_060000
                          xref_meteorological_wind_files :
                          SMM_VWA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_UWA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_VWA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_UWA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_UWA_AXVCNE20240322_163941_20240322_060000_20240322_060000, SMM_VWA_AXVCNE20240322_163941_20240322_060000_20240322_060000
                          xref_meteorological_surface_pressure_files :
                          SMM_PSA_AXVCNE20240322_054027_20240321_180000_20240321_180000, SMM_PSA_AXVCNE20240322_054027_20240322_000000_20240322_000000, SMM_PSA_AXVCNE20240322_174027_20240322_060000_20240322_060000
                          xref_meteorological_temperature_files :
                          SMM_T2M_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_T2M_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_T2M_AXPCNE20240322_174027_20240322_060000_20240322_060000.grb
                          xref_meteorological_water_vapor_files :
                          SMM_CWV_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_CWV_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_CWV_AXPCNE20240322_174027_20240322_060000_20240322_060000.grb
                          xref_meteorological_cloud_liquid_water_files :
                          SMM_CLW_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_CLW_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_CLW_AXPCNE20240322_174027_20240322_060000_20240322_060000.grb
                          xref_model_significant_wave_height_files :
                          SMM_SWH_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_SWH_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_SWH_AXPCNE20240322_174027_20240322_060000_20240322_060000.grb
                          xref_gim_files :
                          JPLQ0810.24I, JPLQ0820.24I
                          xref_pole_location_file :
                          SMM_PO1_AXXCNE20240324_020000_19900101_000000_20240920_000000
                          xref_dac_files :
                          SMM_MOG_AXPCNE20240322_074502_20240321_180000_20240321_180000, SMM_MOG_AXPCNE20240322_074502_20240322_000000_20240322_000000, SMM_MOG_AXPCNE20240322_203000_20240322_060000_20240322_060000
                          xref_precipitation_files :
                          SMM_LSR_AXFCNE20240321_185544_20240321_180000_20240321_180000.grb, SMM_CRR_AXFCNE20240321_185544_20240321_180000_20240321_180000.grb, SMM_CRR_AXFCNE20240322_065522_20240322_000000_20240322_000000.grb, SMM_LSR_AXFCNE20240322_065522_20240322_000000_20240322_000000.grb, SMM_CRR_AXFCNE20240322_065522_20240322_060000_20240322_060000.grb, SMM_LSR_AXFCNE20240322_065522_20240322_060000_20240322_060000.grb
                          xref_sea_ice_mask_files :
                          SMM_ICN_AXFCNE20240322_095633_20240321_000000_20240321_235959.nc, SMM_ICS_AXFCNE20240322_095633_20240321_000000_20240321_235959.nc, SMM_ICN_AXFCNE20240323_041507_20240322_000000_20240322_235959.nc, SMM_ICS_AXFCNE20240323_042002_20240322_000000_20240322_235959.nc
                          xref_wave_model_files :
                          SMM_WMA_AXPCNE20240322_072016_20240321_030000_20240322_000000.grb, SMM_WMA_AXPCNE20240323_072017_20240322_030000_20240323_000000.grb
                          xref_geco_database_version :
                          v102
                          ellipsoid_semi_major_axis :
                          6378137.0
                          ellipsoid_flattening :
                          0.0033528106647474805
                          good_ocean_data_percent :
                          67.62656103685167
                          ssha_variance :
                          0.7787372594877449
                          references :
                          V1.2.1
                          equator_longitude :
                          52.58
                        • - @@ -12072,10 +12070,9 @@

                          display(flags)
                          -
                          -

                          +
                          @@ -12189,7 +12186,6 @@

                          unq_ints_qual = sorted(list(set(qual.load().data.astype(np.int64).flatten().tolist())))
                          @@ -12235,14 +12231,13 @@ 

                          display(lookup.style.apply(lambda x: ['background-color:yellow' if all([i,type(i)==bool]) else '' for i in x]))

                          -
                          -

                          +
                          @@ -22364,7 +22359,6 @@

                          diff --git a/notebooks/datasets/enso_MUR_tutorial_final.html b/notebooks/datasets/enso_MUR_tutorial_final.html index d002d4c9..2a69dba1 100644 --- a/notebooks/datasets/enso_MUR_tutorial_final.html +++ b/notebooks/datasets/enso_MUR_tutorial_final.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/datasets/smap_imerg_tutorial.html b/notebooks/datasets/smap_imerg_tutorial.html index 71e3a219..962857da 100644 --- a/notebooks/datasets/smap_imerg_tutorial.html +++ b/notebooks/datasets/smap_imerg_tutorial.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/harmony subsetting/Harmony L2 Subsetter.html b/notebooks/harmony subsetting/Harmony L2 Subsetter.html index 40e0577f..1f60601c 100644 --- a/notebooks/harmony subsetting/Harmony L2 Subsetter.html +++ b/notebooks/harmony subsetting/Harmony L2 Subsetter.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/harmony subsetting/shapefile_subset.html b/notebooks/harmony subsetting/shapefile_subset.html index 202a41f5..53e9adfc 100644 --- a/notebooks/harmony subsetting/shapefile_subset.html +++ b/notebooks/harmony subsetting/shapefile_subset.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/harmony_concatenation/Harmony_Concatenation.html b/notebooks/harmony_concatenation/Harmony_Concatenation.html index de090951..301174c7 100644 --- a/notebooks/harmony_concatenation/Harmony_Concatenation.html +++ b/notebooks/harmony_concatenation/Harmony_Concatenation.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/harmony_concatenation/Harmony_Subsetting_Concatenation.html b/notebooks/harmony_concatenation/Harmony_Subsetting_Concatenation.html index 59a797ad..5762ce41 100644 --- a/notebooks/harmony_concatenation/Harmony_Subsetting_Concatenation.html +++ b/notebooks/harmony_concatenation/Harmony_Subsetting_Concatenation.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/l2-regridding/reprojection notebook.html b/notebooks/l2-regridding/reprojection notebook.html index 4d3a497a..a2f35a70 100644 --- a/notebooks/l2-regridding/reprojection notebook.html +++ b/notebooks/l2-regridding/reprojection notebook.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/meetings_workshops/arctic_2019.html b/notebooks/meetings_workshops/arctic_2019.html index c7a2ac1c..1548c508 100644 --- a/notebooks/meetings_workshops/arctic_2019.html +++ b/notebooks/meetings_workshops/arctic_2019.html @@ -2,7 +2,7 @@ - + @@ -1180,7 +1180,6 @@

                          SMAP dataset ds_sss_subset = ds_sss_subset_0.swap_dims({'lat':'latitude', 'lon':'longitude'}) ds_sss_subset
                          -
                          @@ -1665,14 +1664,14 @@

                          SMAP dataset -164.625, -164.375, -164.125, -163.875, -163.625, -163.375, -163.125, -162.875, -162.625, -162.375, -162.125, -161.875, -161.625, -161.375, -161.125, -160.875, -160.625, -160.375, -160.125], dtype=float32)

                          • nobs
                            (time, latitude, longitude)
                            float64
                            dask.array<chunksize=(1, 60, 40), meta=np.ndarray>
                            long_name :
                            Number of observations for L3 average of SSS smoothed to approx 70km resolution
                            standard_name :
                            number_of_observations
                            units :
                            1
                            valid_min :
                            1
                            valid_max :
                            480
                            coverage_content_type :
                            physicalMeasurement
                            -
                        •  
                          +
                          -
                          +
                          @@ -1763,14 +1762,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -1861,14 +1860,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -1959,14 +1958,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2057,14 +2056,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2155,14 +2154,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2253,14 +2252,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2355,14 +2354,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2453,14 +2452,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2551,14 +2550,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2653,14 +2652,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2751,14 +2750,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2849,14 +2848,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -2947,14 +2946,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -3045,14 +3044,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -3143,14 +3142,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -3241,14 +3240,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -3335,14 +3334,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -3429,14 +3428,14 @@

                          SMAP dataset
                          -

                          +
                          -
                          +
                          @@ -3498,13 +3497,11 @@

                          SMAP dataset -161.125, -160.875, -160.625, -160.375, -160.125], dtype='float32', name='longitude'))
                        • Conventions :
                          CF-1.7, ACDD-1.3
                          title :
                          SMAP ocean surface salinity
                          version :
                          V5.0 Validated Release
                          summary :
                          The dataset contains the Level 3 8-day running averages of the NASA/RSS Version 5.0 SMAP Salinity Retrieval Algorithm. It includes all necessary ancillary data and the results of all intermediate steps. The data are gridded on a regular 0.25 deg Earth grid. For details see the Release Notes at https://www.remss.com/missions/smap/salinity/.
                          acknowledgement :
                          Funded under Subcontract No.1664013 between JPL and RSS: Production System for NASA Ocean Salinity Science Team (OSST).
                          processing_level :
                          L3
                          resolution :
                          Spatial resolution: approx 70km
                          history :
                          created by T. Meissner
                          date_created :
                          2022-03-29 T12:02:30-0700
                          date_modified :
                          2022-03-29 T12:02:30-0700
                          date_issued :
                          2022-03-29 T12:02:30-0700
                          date_metadata_modified :
                          2022-03-29 T12:02:30-0700
                          institution :
                          Remote Sensing Systems, Santa Rosa, CA, USA
                          source :
                          RSS SMAP-SSS v5.0 algorithm
                          platform :
                          SMAP
                          instrument :
                          SMAP radiometer
                          project :
                          Production System for NASA Ocean Salinity Science Team (OSST)
                          keywords :
                          SURFACE SALINITY, SALINITY, SMAP, NASA, RSS
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          standard_name_vocabulary :
                          CF Standard Name Table v78
                          license :
                          None
                          creator_name :
                          Thomas Meissner, Remote Sensing Systems
                          creator_email :
                          meissner@remss.com
                          creator_url :
                          http://www.remss.com/missions/smap
                          publisher_name :
                          Thomas Meissner, Frank Wentz, Andrew Manaster, Richard Lindsley, Marty Brewer, Michael Densberger, Remote Sensing Systems
                          publisher_email :
                          meissner@remss.com
                          publisher_url :
                          http://www.remss.com/missions/smap
                          id :
                          10.5067/SMP50-3SPCS
                          naming_authority :
                          gov.nasa.earthdata
                          dataset_citation_authors :
                          T. Meissner, F. Wentz, A. Manaster, R. Lindsley, M. Brewer, M. Densberger
                          dataset_citation_year :
                          2022
                          dataset_citation_product :
                          Remote Sensing Systems SMAP Level 3 Sea Surface Salinity Standard Mapped Image 8day running
                          dataset_citation_version :
                          V5.0 Validated Release
                          dataset_citation_institution :
                          Remote Sensing Systems, Santa Rosa, CA, USA
                          dataset_citation_url :
                          Available online at www.remss.com/missions/smap
                          netCDF_version_id :
                          4
                          comment :
                          Major changes in V5.0: 1. sea-ice flag: based on AMSR-2 surface emissivties and discriminant analysis. 2. sea-ice correction included. 3. formal uncertainty estimates added.
                          references :
                          1. V5.0 Release Notes at https://www.remss.com/missions/smap/salinity/ 2. Meissner, T.; Wentz, F.J.; Le Vine, D.M. The Salinity Retrieval Algorithms for the NASA Aquarius Version 5 and SMAP Version 3 Releases. Remote Sens. 2018, 10, 1121. https://doi.org/10.3390/rs10071121 3. Meissner, T.; Manaster, A. SMAP Salinity Retrievals near the Sea-Ice Edge Using Multi-Channel AMSR2 Brightness Temperatures. Remote Sens. 2021, 13, 5120. https://doi.org/10.3390/rs13245120
                          year_of_observation :
                          2019
                          center_day_of_observation :
                          117
                          first_orbit :
                          22566
                          last_orbit :
                          22682
                          time_coverage_start :
                          2019-04-23T12:00:00Z
                          time_coverage_end :
                          2019-05-01T12:00:00Z
                          time_coverage_duration :
                          P8D
                          time_coverage_resolution :
                          P8D
                          cdm_data_type :
                          grid
                          geospatial_bounds :
                          2D
                          geospatial_lat_min :
                          -90.0
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_resolution :
                          0.25
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_min :
                          0.0
                          geospatial_lon_max :
                          360.0
                          geospatial_lon_resolution :
                          0.25
                          geospatial_lon_units :
                          degrees_east
                          geospatial_bounds_vertical_crs :
                          EPSG:5831
                          geospatial_vertical_min :
                          0
                          geospatial_vertical_max :
                          0
                          Source_of_SMAP_SSS_retrievals :
                          T. Meissner, F. Wentz, A. Manaster, R. Lindsley, M. Brewer, M. Densberger, Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 5.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA doi: 10.5067/SMP50-2SOCS www.remss.com/missions/smap.
                          Source_of_ancillary_SST :
                          Canada Meteorological Center. 2016.GHRSST Level 4 CMC0.1deg Global Foundation Sea Surface Temperature Analysis (GDS version 2). Ver.3.3.doi: 10.5067/GHCMC-4FM03 http://dx.doi.org/10.5067/GHCMC-4FM03.
                          Source_of_ancillary_CCMP_wind_speed :
                          Mears, C. et al., 2018.Remote Sensing Systems CCMP NRT V2.0 wind speed and direction. Remote Sensing Systems, Santa Rosa, CA.
                          Source_of_ancillary_AMSR2_sea_ice_flag_and_correction :
                          Meissner, T. and A. Manaster, 2021. SMAP Salinity Retrievals near the Sea-Ice Edge Using Multi-Channel AMSR2 Brightness Temperatures. Remote Sens. 2021, 13, 5120. https://doi.org/10.3390/rs13245120.
                          Source_of_ancillary_land_mask :
                          1 km land/water mask from OCEAN DISCIPLINE PROCESSING SYSTEM (ODPS) based on World Vector Shoreline (WVS)database and World Data Bank. courtesy of Fred Patt, Goddard Space Flight Center, frederick.s.patt@nasa.gov.
                          Source_of_ancillary_reference_SSS_from_HYCOM :
                          Hybrid Coordinate Ocean Model, GLBa0.08/expt_90.9, Top layer salinity. Available at www.hycom.org.
                        • -
                          subset_mean_values = ds_sss_subset.sss_smap.mean(dim = 'time', skipna = True)
                           subset_mean_values
                          -
                          @@ -3875,14 +3872,14 @@

                          SMAP dataset lat (latitude) float32 60.12 60.38 60.62 60.88 ... 74.38 74.62 74.88 * latitude (latitude) float32 60.12 60.38 60.62 60.88 ... 74.38 74.62 74.88 * longitude (longitude) float32 -169.9 -169.6 -169.4 ... -160.6 -160.4 -160.1

                          +
                          -
                          +
                          @@ -3955,7 +3952,6 @@

                          SMAP dataset dtype='float32', name='longitude'))
                        • -

                          Saildrone dataset

                          diff --git a/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Cloud.html b/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Cloud.html index a5294a51..726e644b 100644 --- a/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Cloud.html +++ b/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Cloud.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Local.html b/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Local.html index d62db7ac..cf2ab802 100644 --- a/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Local.html +++ b/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Local.html @@ -2,7 +2,7 @@ - + diff --git a/notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html b/notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html index c3fb22bf..702f2611 100644 --- a/notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html +++ b/notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html @@ -2,7 +2,7 @@ - + @@ -3492,10 +3492,9 @@

                          USGS Gauge River df_gauge_data
                          -
                          -

                          +
                          @@ -3602,7 +3601,6 @@

                          USGS Gauge River -

                          Plot the data

                          @@ -4417,10 +4415,9 @@

                          Use Case: Validationheight_df

                          -
                          -

                          +
                          @@ -4503,7 +4500,6 @@

                          Use Case: Validation -
                          diff = height_df.gauge_height - height_df.MEaSUREs_height
                           mean_diff = diff.mean()
                          diff --git a/notebooks/meetings_workshops/swot_ea_workshop_sept2022/SWOTHR_s3Access.html b/notebooks/meetings_workshops/swot_ea_workshop_sept2022/SWOTHR_s3Access.html
                          index a543f108..c7faba3b 100644
                          --- a/notebooks/meetings_workshops/swot_ea_workshop_sept2022/SWOTHR_s3Access.html
                          +++ b/notebooks/meetings_workshops/swot_ea_workshop_sept2022/SWOTHR_s3Access.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html b/notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html
                          index e1c1e3f1..356326b4 100644
                          --- a/notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html
                          +++ b/notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          @@ -3090,7 +3090,6 @@ 

                          -
                          @@ -3488,14 +3487,14 @@

                          • lwe_thickness
                            (time, lat, lon)
                            float64
                            dask.array<chunksize=(219, 360, 720), meta=np.ndarray>
                            units :
                            cm
                            long_name :
                            Liquid_Water_Equivalent_Thickness
                            standard_name :
                            Liquid_Water_Equivalent_Thickness
                            grid_mapping :
                            WGS84
                            valid_min :
                            -1986.9763606523888
                            valid_max :
                            965.4782725418918
                            comment :
                            Coastline Resolution Improvement (CRI) filter is applied
                            -

                          +
                          -
                          +
                          @@ -3590,14 +3589,14 @@

                          -

                          +
                          -
                          +
                          @@ -3676,14 +3675,14 @@

                          -

                          +
                          -
                          +
                          @@ -3762,14 +3761,14 @@

                          -

                          +
                          -
                          +
                          @@ -3844,14 +3843,14 @@

                          -

                          +
                          -
                          +
                          @@ -3934,14 +3933,14 @@

                          -

                          +
                          -
                          +
                          @@ -4032,14 +4031,14 @@

                          -

                          +
                          -
                          +
                          @@ -4130,14 +4129,14 @@

                          -

                          +
                          -
                          +
                          @@ -4196,7 +4195,6 @@

                          Conventions :
                          CF-1.6, ACDD-1.3, ISO 8601
                          Metadata_Conventions :
                          Unidata Dataset Discovery v1.0
                          standard_name_vocabulary :
                          NetCDF Climate and Forecast (CF) Metadata Convention-1.6
                          title :
                          JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRI
                          summary :
                          Monthly gravity solutions from GRACE and GRACE-FO as determined from the JPL RL06.1Mv03 mascon solution - with CRI filter applied
                          keywords :
                          Solid Earth, Geodetics/Gravity, Gravity, liquid_water_equivalent_thickness
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          platform :
                          GRACE and GRACE-FO
                          institution :
                          NASA/JPL
                          creator_name :
                          David Wiese
                          creator_email :
                          grace@podaac.jpl.nasa.gov
                          creator_url :
                          https://grace.jpl.nasa.gov
                          creator_type :
                          group
                          creator_institution :
                          NASA/JPL
                          publisher_name :
                          Physical Oceanography Distributed Active Archive Center
                          publisher_email :
                          podaac@jpl.nasa.gov
                          publisher_url :
                          https://podaac.jpl.nasa.gov
                          publisher_type :
                          group
                          publisher_institution :
                          NASA/JPL
                          project :
                          NASA Gravity Recovery and Climate Experiment (GRACE) and NASA Gravity Recovery and Climate Experiment Follow-On (GRACE-FO)
                          program :
                          NASA Earth Science System Pathfinder and NASA Earth Systematic Missions Program
                          id :
                          10.5067/TEMSC-3JC62
                          naming_authority :
                          org.doi.dx
                          source :
                          GRACE and GRACE-FO JPL RL06.1Mv03-CRI
                          processing_level :
                          2 and 3
                          acknowledgement :
                          GRACE is a joint mission of NASA (USA) and DLR (Germany). GRACE-FO is a joint mission of NASA (USA) and the German Research Center for Geosciences (GFZ). Use the digital object identifier provided in the id attribute when citing this data. See https://podaac.jpl.nasa.gov/CitingPODAAC
                          license :
                          https://science.nasa.gov/earth-science/earth-science-data/data-information-policy
                          product_version :
                          v3.0
                          time_epoch :
                          2002-01-01T00:00:00Z
                          time_coverage_start :
                          2002-04-16T00:00:00Z
                          time_coverage_end :
                          2023-03-16T23:59:59Z
                          geospatial_lat_min :
                          -89.75
                          geospatial_lat_max :
                          89.75
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lat_resolution :
                          0.5 degree grid; however the native resolution of the data is 3-degree equal-area mascons
                          geospatial_lon_min :
                          0.25
                          geospatial_lon_max :
                          359.75
                          geospatial_lon_units :
                          degrees_east
                          geospatial_lon_resolution :
                          0.5 degree grid; however the native resolution of the data is 3-degree equal-area mascons
                          time_mean_removed :
                          2004.000 to 2009.999
                          months_missing :
                          2002-06;2002-07;2003-06;2011-01;2011-06;2012-05;2012-10;2013-03;2013-08;2013-09;2014-02;2014-07;2014-12;2015-06;2015-10;2015-11;2016-04;2016-09;2016-10;2017-02;2017-07;2017-08;2017-09;2017-10;2017-11;2017-12;2018-01;2018-02;2018-03;2018-04;2018-05;2018-08-2018-09
                          postprocess_1 :
                          OCEAN_ATMOSPHERE_DEALIAS_MODEL (GAD), MONTHLY_AVE, ADDED BACK TO OCEAN PIXELS ONLY
                          postprocess_2 :
                          Water density used to convert to equivalent water height: 1000 kg/m^3
                          postprocess_3 :
                          Coastline Resolution Improvement (CRI) filter has been applied to separate land/ocean mass within mascons that span coastlines
                          GIA_removed :
                          ICE6G-D; Peltier, W. R., D. F. Argus, and R. Drummond (2018) Comment on the paper by Purcell et al. 2016 entitled An assessment of ICE-6G_C (VM5a) glacial isostatic adjustment model, J. Geophys. Res. Solid Earth, 122.
                          geocenter_correction :
                          We use a version of TN-13 based on the JPL mascons
                          C_20_substitution :
                          TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929
                          C_30_substitution :
                          TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929. This substitution is made for all months after August 2016.
                          user_note_1 :
                          The accelerometer on the GRACE-B spacecraft was turned off after August 2016. After this date, the accelerometer on GRACE-A was used to derive the non-gravitational accelerations acting on GRACE-B using a transplant procedure. This has led to a subsequent degradation in the quality of the gravity fields derived. The uncertainties in this file have been scaled to accomodate this degradation.
                          user_note_2 :
                          The accelerometer on the GRACE-D spacecraft began performing sub-optimally after June 21, 2018. After this date, the accelerometer on GRACE-C is used to derive the non-gravitational accelerations acting on GRACE-D using a transplant procedure. The uncertainties in the file have been scaled to accomodate this degradation using the current best state of knowledge.
                          journal_reference :
                          Watkins, M. M., D. N. Wiese, D.-N. Yuan, C. Boening, and F. W. Landerer (2015) Improved methods for observing Earth's time variable mass distribution with GRACE using spherical cap mascons, J. Geophys. Res., 120, doi:10.1002/2014JB011547.
                          CRI_filter_journal_reference :
                          Wiese, D. N., F. W. Landerer, and M. M. Watkins (2016) Quantifying and reducing leakage errors in the JPL RL05M GRACE mascon solution, Water Resour. Res., 52, doi:10.1002/2016WR019344.
                          date_created :
                          2023-05-22T06:05:03Z
                          -
                          @@ -4287,7 +4285,6 @@

                          River heights (Pre-SWOT MEa
                          -
                          @@ -4684,14 +4681,14 @@

                          River heights (Pre-SWOT MEa '1993-04-10T15:20:40.665117184', ..., '2019-04-18T03:39:13.243964928', '2019-04-19T03:39:13.243964928', '2019-04-20T03:39:13.243964928'], dtype='datetime64[ns]')

                          • lon
                            (X)
                            float64
                            dask.array<chunksize=(3311,), meta=np.ndarray>
                            units :
                            degrees_east
                            long_name :
                            longitude
                            standard_name :
                            longitude
                            axis :
                            X
                            -
                        • +
                          -
                          +
                          @@ -4774,14 +4771,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -4860,14 +4857,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -4962,14 +4959,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -5044,14 +5041,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -5134,14 +5131,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -5228,14 +5225,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -5322,14 +5319,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -5412,14 +5409,14 @@

                          River heights (Pre-SWOT MEa
                          -

                          +
                          -
                          +
                          @@ -5478,7 +5475,6 @@

                          River heights (Pre-SWOT MEa '2019-04-20 03:39:13.243964928'], dtype='datetime64[ns]', name='time', length=9469, freq=None))
                        • title :
                          GRRATS (Global River Radar Altimetry Time Series)1km daily interpolation for the Amazon River
                          Conventions :
                          CF-1.6, ACDD-1.3
                          institution :
                          Ohio State University, School of Earth Sciences
                          source :
                          MEaSUREs OSU Storage toolbox 2018
                          keywords :
                          EARTH SCIENCE,TERRESTRIAL HYDROSPHERE,SURFACE WATER,SURFACE WATER PROCESSES/MEASUREMENTS,STAGE HEIGHT
                          keywords_vocabulary :
                          Global Change Master Directory (GCMD)
                          cdm_data_type :
                          station
                          creator_name :
                          Coss,Steve
                          creator_email :
                          Coss.31@osu.edu
                          project :
                          MEaSUREs OSU
                          program :
                          NASA Earth Science Data Systems (ESDS)
                          publisher_name :
                          PO.DAAC (Physical Oceanography Distributed Active Archive Center)
                          publisher_email :
                          podaac@podaac.jpl.nasa.gov
                          publisher_url :
                          podaac.jpl.nasa.gov
                          publisher_type :
                          Institution
                          publisher_institution :
                          PO.DAAC
                          processing_level :
                          L2
                          doi :
                          10.5067/PSGRA-DA2V2
                          history :
                          This GRRATS product adds data river surface height data from ERS1, ERS2, TOPEX/Poseidon and Jason-3 to expand the temporal coverage of the product. GRRATS1kd includes interpolated daily 1km resolution height measurements as well as river channel storage measurements.
                          platform :
                          ERS-1(L2),ERS-2(L2),TOPEX/POSEIDON(L2), Jason-1(L2),OSTM/Jason-2(L2),Jason-3(L2),Envisat(L2)
                          platform_vocabulary :
                          NASA/GCMD Platform Keywords. Version 8.6
                          instrument :
                          RA(L2),RA-2(L2),ALT(TOPEX)(L2),POSEIDON-2(L2),POSEIDON-3(L2),POSEIDON-3b(L2)
                          instrument_vocabulary :
                          NASA/GCMD Platform Keywords. Version 8.6
                          references :
                          in review :doi.org/10.5194/essd-2019-84
                          id :
                          GRRATS(Global River Radar Altimeter Time Series) 1km/daily
                          summary :
                          The Global River Radar Altimeter Time Series (GRRATS) 1km/daily interpolations are river heights from ERS1, ERS2, TOPEX/Poseidon OSTM/Jason-2 Envisat and Jason-3 that are interpolated and processed to create a continuous heights for the study over the temporal range of the altimeters used. The purpose of these heights are to provide satellite altimetric river height data in a form that is more recognizable to the observational community and as a way to get users use to using satellite data for river hydrology.
                          time_coverage_resolution :
                          1 day
                          date_created :
                          2021-06-30T08:03:41
                          time_coverage_start :
                          1992-04-08T15:20:40
                          time_coverage_end :
                          2018-04-20T03:39:13
                          geospatial_lon_min :
                          -73.35433106652545
                          geospatial_lon_max :
                          -51.0426448887506
                          geospatial_lon_units :
                          degree_east
                          geospatial_lat_min :
                          -4.3804275867636875
                          geospatial_lat_max :
                          -0.6550700975069503
                          geospatial_lat_units :
                          degree_north
                          geospatial_vertical_max :
                          92.7681246287056
                          geospatial_vertical_min :
                          -3.5634095181633763
                          geospatial_vertical_units :
                          m
                          geospatial_vertical_positive :
                          up
                        • -

                          Plot a subset of the data

                          @@ -5545,7 +5541,6 @@

                          Sea S
                          -
                          @@ -5938,14 +5933,14 @@

                          Sea S '2011-09-05T00:00:00.000000000', ..., '2022-07-25T00:00:00.000000000', '2022-07-29T00:00:00.000000000', '2022-08-02T00:00:00.000000000'], dtype='datetime64[ns]')

                          • sss
                            (latitude, longitude, time)
                            float32
                            dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>
                            long_name :
                            sea surface salinity
                            standard_name :
                            sea_surface_salinity
                            units :
                            1e-3
                            valid_min :
                            0.0
                            valid_max :
                            45.0
                            add_factor :
                            0.0
                            coverage_content_type :
                            physicalMeasurement
                            -
                        • +
                          -
                          +
                          @@ -6036,14 +6031,14 @@

                          Sea S
                          -

                          +
                          -
                          +
                          @@ -6138,14 +6133,14 @@

                          Sea S
                          -

                          +
                          -
                          +
                          @@ -6200,7 +6195,6 @@

                          Sea S '2022-07-29', '2022-08-02'], dtype='datetime64[ns]', name='time', length=998, freq=None))
                        • Conventions :
                          CF-1.8, ACDD-1.3
                          standard_name_vocabulary :
                          CF Standard Name Table v27
                          Title :
                          Multi-Mission Optimally Interpolated Sea Surface Salinity 7-Day Global Dataset V1.0
                          Short_Name :
                          OISSS_L4_multimission_7d_v1
                          Version :
                          V1.0
                          Processing_Level :
                          Level 4
                          source :
                          Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662
                          sourse_of_input_Aquarius_SSS :
                          Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5
                          sourse_of_input_SMAP_SSS :
                          Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.
                          sourse_of_input_SMOS_SSS :
                          ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/access
                          platform :
                          Aquarius/SAC-D, SMAP, SMOS
                          instrument :
                          Aquarius radiometer, SMAP radiometer, SMOS MIRAS
                          Creation_Date :
                          2023-01-16T04:04:41Z
                          Creator_Name :
                          Oleg Melnichenko
                          Creator_Email :
                          oleg@hawaii.edu
                          Creator_URL :
                          http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB
                          Project :
                          NASA Ocean Salinity
                          Keywords :
                          Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSS
                          Keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          Institution :
                          IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CA
                          Publisher_Name :
                          Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank Wentz
                          Publisher_Email :
                          oleg@hawaii.edu.org
                          Publisher_URL :
                          http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB
                          Dataset_Citation_Authors :
                          Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank Wentz
                          Dataset_Citation_Year :
                          2021
                          Dataset_Citation_Product :
                          Aquarius/SMAP Sea Surface Salinity Optimum Interpolation Analysis
                          Technical_Notes :
                          http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdf
                          year_of_observation :
                          2022
                          month_of_observation :
                          3
                          day_of_observation :
                          11
                          time_coverage_start :
                          2022-03-07T12:00:00Z
                          time_coverage_end :
                          2022-03-15T12:00:00Z
                          time_coverage_resolution :
                          P7D
                          cdm_data_type :
                          grid
                          geospatial_lat_min :
                          -90.0
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_resolution :
                          0.25
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_min :
                          -180.0
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_resolution :
                          0.25
                          geospatial_lon_units :
                          degrees_east
                        • -

                          Plot a subset of the data

                          @@ -6297,7 +6291,6 @@

                          Sea Surface Temperature (MODI
                          -
                          @@ -6759,14 +6752,14 @@

                          Sea Surface Temperature (MODI '2022-08-01T00:00:00.000000000', '2022-09-01T00:00:00.000000000', '2022-10-01T00:00:00.000000000', '2022-11-01T00:00:00.000000000', '2023-01-01T00:00:00.000000000'], dtype='datetime64[ns]')

                          • sst4
                            (time, lat, lon)
                            float32
                            dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>
                            long_name :
                            4um Sea Surface Temperature
                            units :
                            degree_C
                            standard_name :
                            sea_surface_temperature
                            valid_min :
                            -1000
                            valid_max :
                            10000
                            display_scale :
                            linear
                            display_min :
                            -2.0
                            display_max :
                            45.0
                            -
                        • +
                          -
                          +
                          @@ -6845,14 +6838,14 @@

                          Sea Surface Temperature (MODI
                          -

                          +
                          -
                          +
                          @@ -6919,14 +6912,14 @@

                          Sea Surface Temperature (MODI
                          -

                          +
                          -
                          +
                          @@ -6989,7 +6982,6 @@

                          Sea Surface Temperature (MODI '2022-11-01', '2023-01-01'], dtype='datetime64[ns]', name='time', length=143, freq=None))
                        • product_name :
                          AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc
                          instrument :
                          MODIS
                          title :
                          MODISA Level-3 Standard Mapped Image
                          project :
                          Ocean Biology Processing Group (NASA/GSFC/OBPG)
                          platform :
                          Aqua
                          temporal_range :
                          month
                          processing_version :
                          R2019.0
                          date_created :
                          2019-12-17T18:28:57.000Z
                          history :
                          l3mapgen par=AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc.param
                          l2_flag_names :
                          LAND,~HISOLZEN
                          time_coverage_start :
                          2010-12-31T12:10:01.000Z
                          time_coverage_end :
                          2011-01-31T14:29:59.000Z
                          start_orbit_number :
                          46065
                          end_orbit_number :
                          46518
                          map_projection :
                          Equidistant Cylindrical
                          latitude_units :
                          degrees_north
                          longitude_units :
                          degrees_east
                          northernmost_latitude :
                          90.0
                          southernmost_latitude :
                          -90.0
                          westernmost_longitude :
                          -180.0
                          easternmost_longitude :
                          180.0
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_min :
                          -90.0
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_min :
                          -180.0
                          latitude_step :
                          0.083333336
                          longitude_step :
                          0.083333336
                          sw_point_latitude :
                          -89.958336
                          sw_point_longitude :
                          -179.95833
                          spatialResolution :
                          9.28 km
                          geospatial_lon_resolution :
                          0.083333336
                          geospatial_lat_resolution :
                          0.083333336
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_units :
                          degrees_east
                          number_of_lines :
                          2160
                          number_of_columns :
                          4320
                          measure :
                          Mean
                          suggested_image_scaling_minimum :
                          -2.0
                          suggested_image_scaling_maximum :
                          45.0
                          suggested_image_scaling_type :
                          LINEAR
                          suggested_image_scaling_applied :
                          No
                          _lastModified :
                          2019-12-17T18:28:57.000Z
                          Conventions :
                          CF-1.6 ACDD-1.3
                          institution :
                          NASA Goddard Space Flight Center, Ocean Ecology Laboratory, Ocean Biology Processing Group
                          standard_name_vocabulary :
                          CF Standard Name Table v36
                          naming_authority :
                          gov.nasa.gsfc.sci.oceandata
                          id :
                          AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc/L3/AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc
                          license :
                          https://science.nasa.gov/earth-science/earth-science-data/data-information-policy/
                          creator_name :
                          NASA/GSFC/OBPG
                          publisher_name :
                          NASA/GSFC/OBPG
                          creator_email :
                          data@oceancolor.gsfc.nasa.gov
                          publisher_email :
                          data@oceancolor.gsfc.nasa.gov
                          creator_url :
                          https://oceandata.sci.gsfc.nasa.gov
                          publisher_url :
                          https://oceandata.sci.gsfc.nasa.gov
                          processing_level :
                          L3 Mapped
                          cdm_data_type :
                          grid
                          data_bins :
                          4834400
                          data_minimum :
                          -1.635
                          data_maximum :
                          32.06999
                        • -

                          Plot a subset of the data

                          diff --git a/notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html b/notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html index 0a533aeb..a1d4a8f1 100644 --- a/notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html +++ b/notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html @@ -2,7 +2,7 @@ - + @@ -3099,7 +3099,6 @@

                          Open file using xa ds_GRACE = xr.open_mfdataset("./grace_data/GRCTellus.JPL.200204_202303.GLO.RL06.1M.MSCNv03CRI.nc", engine="h5netcdf") ds_GRACE
                          -
                          @@ -3497,14 +3496,14 @@

                          Open file using xa '2002-08-16T12:00:00.000000000', ..., '2023-01-16T12:00:00.000000000', '2023-02-15T00:00:00.000000000', '2023-03-16T12:00:00.000000000'], dtype='datetime64[ns]')

                          • lwe_thickness
                            (time, lat, lon)
                            float64
                            dask.array<chunksize=(219, 360, 720), meta=np.ndarray>
                            units :
                            cm
                            long_name :
                            Liquid_Water_Equivalent_Thickness
                            standard_name :
                            Liquid_Water_Equivalent_Thickness
                            grid_mapping :
                            WGS84
                            valid_min :
                            -1986.9763606523888
                            valid_max :
                            965.4782725418918
                            comment :
                            Coastline Resolution Improvement (CRI) filter is applied
                            -
                        • +
                          -
                          +
                          @@ -3601,14 +3600,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -3689,14 +3688,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -3777,14 +3776,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -3861,14 +3860,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -3953,14 +3952,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -4053,14 +4052,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -4153,14 +4152,14 @@

                          Open file using xa
                          -

                          +
                          -
                          +
                          @@ -4221,7 +4220,6 @@

                          Open file using xa '2023-02-15 00:00:00', '2023-03-16 12:00:00'], dtype='datetime64[ns]', name='time', length=219, freq=None))
                        • Conventions :
                          CF-1.6, ACDD-1.3, ISO 8601
                          Metadata_Conventions :
                          Unidata Dataset Discovery v1.0
                          standard_name_vocabulary :
                          NetCDF Climate and Forecast (CF) Metadata Convention-1.6
                          title :
                          JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRI
                          summary :
                          Monthly gravity solutions from GRACE and GRACE-FO as determined from the JPL RL06.1Mv03 mascon solution - with CRI filter applied
                          keywords :
                          Solid Earth, Geodetics/Gravity, Gravity, liquid_water_equivalent_thickness
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          platform :
                          GRACE and GRACE-FO
                          institution :
                          NASA/JPL
                          creator_name :
                          David Wiese
                          creator_email :
                          grace@podaac.jpl.nasa.gov
                          creator_url :
                          https://grace.jpl.nasa.gov
                          creator_type :
                          group
                          creator_institution :
                          NASA/JPL
                          publisher_name :
                          Physical Oceanography Distributed Active Archive Center
                          publisher_email :
                          podaac@jpl.nasa.gov
                          publisher_url :
                          https://podaac.jpl.nasa.gov
                          publisher_type :
                          group
                          publisher_institution :
                          NASA/JPL
                          project :
                          NASA Gravity Recovery and Climate Experiment (GRACE) and NASA Gravity Recovery and Climate Experiment Follow-On (GRACE-FO)
                          program :
                          NASA Earth Science System Pathfinder and NASA Earth Systematic Missions Program
                          id :
                          10.5067/TEMSC-3JC62
                          naming_authority :
                          org.doi.dx
                          source :
                          GRACE and GRACE-FO JPL RL06.1Mv03-CRI
                          processing_level :
                          2 and 3
                          acknowledgement :
                          GRACE is a joint mission of NASA (USA) and DLR (Germany). GRACE-FO is a joint mission of NASA (USA) and the German Research Center for Geosciences (GFZ). Use the digital object identifier provided in the id attribute when citing this data. See https://podaac.jpl.nasa.gov/CitingPODAAC
                          license :
                          https://science.nasa.gov/earth-science/earth-science-data/data-information-policy
                          product_version :
                          v3.0
                          time_epoch :
                          2002-01-01T00:00:00Z
                          time_coverage_start :
                          2002-04-16T00:00:00Z
                          time_coverage_end :
                          2023-03-16T23:59:59Z
                          geospatial_lat_min :
                          -89.75
                          geospatial_lat_max :
                          89.75
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lat_resolution :
                          0.5 degree grid; however the native resolution of the data is 3-degree equal-area mascons
                          geospatial_lon_min :
                          0.25
                          geospatial_lon_max :
                          359.75
                          geospatial_lon_units :
                          degrees_east
                          geospatial_lon_resolution :
                          0.5 degree grid; however the native resolution of the data is 3-degree equal-area mascons
                          time_mean_removed :
                          2004.000 to 2009.999
                          months_missing :
                          2002-06;2002-07;2003-06;2011-01;2011-06;2012-05;2012-10;2013-03;2013-08;2013-09;2014-02;2014-07;2014-12;2015-06;2015-10;2015-11;2016-04;2016-09;2016-10;2017-02;2017-07;2017-08;2017-09;2017-10;2017-11;2017-12;2018-01;2018-02;2018-03;2018-04;2018-05;2018-08-2018-09
                          postprocess_1 :
                          OCEAN_ATMOSPHERE_DEALIAS_MODEL (GAD), MONTHLY_AVE, ADDED BACK TO OCEAN PIXELS ONLY
                          postprocess_2 :
                          Water density used to convert to equivalent water height: 1000 kg/m^3
                          postprocess_3 :
                          Coastline Resolution Improvement (CRI) filter has been applied to separate land/ocean mass within mascons that span coastlines
                          GIA_removed :
                          ICE6G-D; Peltier, W. R., D. F. Argus, and R. Drummond (2018) Comment on the paper by Purcell et al. 2016 entitled An assessment of ICE-6G_C (VM5a) glacial isostatic adjustment model, J. Geophys. Res. Solid Earth, 122.
                          geocenter_correction :
                          We use a version of TN-13 based on the JPL mascons
                          C_20_substitution :
                          TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929
                          C_30_substitution :
                          TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929. This substitution is made for all months after August 2016.
                          user_note_1 :
                          The accelerometer on the GRACE-B spacecraft was turned off after August 2016. After this date, the accelerometer on GRACE-A was used to derive the non-gravitational accelerations acting on GRACE-B using a transplant procedure. This has led to a subsequent degradation in the quality of the gravity fields derived. The uncertainties in this file have been scaled to accomodate this degradation.
                          user_note_2 :
                          The accelerometer on the GRACE-D spacecraft began performing sub-optimally after June 21, 2018. After this date, the accelerometer on GRACE-C is used to derive the non-gravitational accelerations acting on GRACE-D using a transplant procedure. The uncertainties in the file have been scaled to accomodate this degradation using the current best state of knowledge.
                          journal_reference :
                          Watkins, M. M., D. N. Wiese, D.-N. Yuan, C. Boening, and F. W. Landerer (2015) Improved methods for observing Earth's time variable mass distribution with GRACE using spherical cap mascons, J. Geophys. Res., 120, doi:10.1002/2014JB011547.
                          CRI_filter_journal_reference :
                          Wiese, D. N., F. W. Landerer, and M. M. Watkins (2016) Quantifying and reducing leakage errors in the JPL RL05M GRACE mascon solution, Water Resour. Res., 52, doi:10.1002/2016WR019344.
                          date_created :
                          2023-05-22T06:05:03Z
                        • -
                          @@ -4807,7 +4805,6 @@

                          Sea S engine='h5netcdf') ds_sss
                          -
                          @@ -5200,14 +5197,14 @@

                          Sea S '2011-09-05T00:00:00.000000000', ..., '2022-07-25T00:00:00.000000000', '2022-07-29T00:00:00.000000000', '2022-08-02T00:00:00.000000000'], dtype='datetime64[ns]')

                          • sss
                            (latitude, longitude, time)
                            float32
                            dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>
                            long_name :
                            sea surface salinity
                            standard_name :
                            sea_surface_salinity
                            units :
                            1e-3
                            valid_min :
                            0.0
                            valid_max :
                            45.0
                            add_factor :
                            0.0
                            coverage_content_type :
                            physicalMeasurement
                            -
                        • +
                          -
                          +
                          @@ -5300,14 +5297,14 @@

                          Sea S
                          -

                          +
                          -
                          +
                          @@ -5404,14 +5401,14 @@

                          Sea S
                          -

                          +
                          -
                          +
                          @@ -5468,7 +5465,6 @@

                          Sea S '2022-07-29', '2022-08-02'], dtype='datetime64[ns]', name='time', length=998, freq=None))
                        • Conventions :
                          CF-1.8, ACDD-1.3
                          standard_name_vocabulary :
                          CF Standard Name Table v27
                          Title :
                          Multi-Mission Optimally Interpolated Sea Surface Salinity 7-Day Global Dataset V1.0
                          Short_Name :
                          OISSS_L4_multimission_7d_v1
                          Version :
                          V1.0
                          Processing_Level :
                          Level 4
                          source :
                          Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662
                          sourse_of_input_Aquarius_SSS :
                          Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5
                          sourse_of_input_SMAP_SSS :
                          Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.
                          sourse_of_input_SMOS_SSS :
                          ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/access
                          platform :
                          Aquarius/SAC-D, SMAP, SMOS
                          instrument :
                          Aquarius radiometer, SMAP radiometer, SMOS MIRAS
                          Creation_Date :
                          2023-01-16T04:04:41Z
                          Creator_Name :
                          Oleg Melnichenko
                          Creator_Email :
                          oleg@hawaii.edu
                          Creator_URL :
                          http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB
                          Project :
                          NASA Ocean Salinity
                          Keywords :
                          Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSS
                          Keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          Institution :
                          IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CA
                          Publisher_Name :
                          Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank Wentz
                          Publisher_Email :
                          oleg@hawaii.edu.org
                          Publisher_URL :
                          http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB
                          Dataset_Citation_Authors :
                          Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank Wentz
                          Dataset_Citation_Year :
                          2021
                          Dataset_Citation_Product :
                          Aquarius/SMAP Sea Surface Salinity Optimum Interpolation Analysis
                          Technical_Notes :
                          http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdf
                          year_of_observation :
                          2022
                          month_of_observation :
                          3
                          day_of_observation :
                          11
                          time_coverage_start :
                          2022-03-07T12:00:00Z
                          time_coverage_end :
                          2022-03-15T12:00:00Z
                          time_coverage_resolution :
                          P7D
                          cdm_data_type :
                          grid
                          geospatial_lat_min :
                          -90.0
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_resolution :
                          0.25
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_min :
                          -180.0
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_resolution :
                          0.25
                          geospatial_lon_units :
                          degrees_east
                        • -

                          Plot a subset of the data

                          @@ -5573,7 +5569,6 @@

                          Sea Surface Temperature (MODI ds_MODIS = xr.open_mfdataset(modis_path, combine='by_coords', join='override', preprocess = preprocessing) ds_MODIS
                          -
                          @@ -6035,14 +6030,14 @@

                          Sea Surface Temperature (MODI '2022-08-01T00:00:00.000000000', '2022-09-01T00:00:00.000000000', '2022-10-01T00:00:00.000000000', '2022-11-01T00:00:00.000000000', '2023-01-01T00:00:00.000000000'], dtype='datetime64[ns]')

                          • sst4
                            (time, lat, lon)
                            float32
                            dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>
                            long_name :
                            4um Sea Surface Temperature
                            units :
                            degree_C
                            standard_name :
                            sea_surface_temperature
                            valid_min :
                            -1000
                            valid_max :
                            10000
                            display_scale :
                            linear
                            display_min :
                            -2.0
                            display_max :
                            45.0
                            -
                        • +
                          -
                          +
                          @@ -6123,14 +6118,14 @@

                          Sea Surface Temperature (MODI
                          -

                          +
                          -
                          +
                          @@ -6199,14 +6194,14 @@

                          Sea Surface Temperature (MODI
                          -

                          +
                          -
                          +
                          @@ -6271,7 +6266,6 @@

                          Sea Surface Temperature (MODI '2022-11-01', '2023-01-01'], dtype='datetime64[ns]', name='time', length=143, freq=None))
                        • product_name :
                          AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc
                          instrument :
                          MODIS
                          title :
                          MODISA Level-3 Standard Mapped Image
                          project :
                          Ocean Biology Processing Group (NASA/GSFC/OBPG)
                          platform :
                          Aqua
                          temporal_range :
                          month
                          processing_version :
                          R2019.0
                          date_created :
                          2019-12-17T18:28:57.000Z
                          history :
                          l3mapgen par=AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc.param
                          l2_flag_names :
                          LAND,~HISOLZEN
                          time_coverage_start :
                          2010-12-31T12:10:01.000Z
                          time_coverage_end :
                          2011-01-31T14:29:59.000Z
                          start_orbit_number :
                          46065
                          end_orbit_number :
                          46518
                          map_projection :
                          Equidistant Cylindrical
                          latitude_units :
                          degrees_north
                          longitude_units :
                          degrees_east
                          northernmost_latitude :
                          90.0
                          southernmost_latitude :
                          -90.0
                          westernmost_longitude :
                          -180.0
                          easternmost_longitude :
                          180.0
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_min :
                          -90.0
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_min :
                          -180.0
                          latitude_step :
                          0.083333336
                          longitude_step :
                          0.083333336
                          sw_point_latitude :
                          -89.958336
                          sw_point_longitude :
                          -179.95833
                          spatialResolution :
                          9.28 km
                          geospatial_lon_resolution :
                          0.083333336
                          geospatial_lat_resolution :
                          0.083333336
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_units :
                          degrees_east
                          number_of_lines :
                          2160
                          number_of_columns :
                          4320
                          measure :
                          Mean
                          suggested_image_scaling_minimum :
                          -2.0
                          suggested_image_scaling_maximum :
                          45.0
                          suggested_image_scaling_type :
                          LINEAR
                          suggested_image_scaling_applied :
                          No
                          _lastModified :
                          2019-12-17T18:28:57.000Z
                          Conventions :
                          CF-1.6 ACDD-1.3
                          institution :
                          NASA Goddard Space Flight Center, Ocean Ecology Laboratory, Ocean Biology Processing Group
                          standard_name_vocabulary :
                          CF Standard Name Table v36
                          naming_authority :
                          gov.nasa.gsfc.sci.oceandata
                          id :
                          AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc/L3/AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc
                          license :
                          https://science.nasa.gov/earth-science/earth-science-data/data-information-policy/
                          creator_name :
                          NASA/GSFC/OBPG
                          publisher_name :
                          NASA/GSFC/OBPG
                          creator_email :
                          data@oceancolor.gsfc.nasa.gov
                          publisher_email :
                          data@oceancolor.gsfc.nasa.gov
                          creator_url :
                          https://oceandata.sci.gsfc.nasa.gov
                          publisher_url :
                          https://oceandata.sci.gsfc.nasa.gov
                          processing_level :
                          L3 Mapped
                          cdm_data_type :
                          grid
                          data_bins :
                          4834400
                          data_minimum :
                          -1.635
                          data_maximum :
                          32.06999
                        • - diff --git a/notebooks/meetings_workshops/workshop_osm_2022/ECCO_ssh_sst_corr.html b/notebooks/meetings_workshops/workshop_osm_2022/ECCO_ssh_sst_corr.html index 82efb2e8..598a26b0 100644 --- a/notebooks/meetings_workshops/workshop_osm_2022/ECCO_ssh_sst_corr.html +++ b/notebooks/meetings_workshops/workshop_osm_2022/ECCO_ssh_sst_corr.html @@ -2,7 +2,7 @@ - + @@ -1313,7 +1313,6 @@

                          Open datasets with xarray()

                          ds0 = xr.open_zarr(s3.get_mapper(s3_urls[0]), decode_cf=True, mask_and_scale=True)
                           ds0
                          -
                          @@ -1693,14 +1692,14 @@

                          Open datasets with xarray()

                          time_coverage_start: 2001-12-01T00:00:00 title: ECCO Sea Surface Height - Monthly Mean 0.5 ... uuid: cd67c8ad-0f9e-4cf7-a3c3-4ac4d6016ea5
                          +
                          -
                          +
                          @@ -1839,14 +1838,14 @@

                          Open datasets with xarray()

                          -
                          +
                          -
                          +
                          @@ -1980,14 +1979,14 @@

                          Open datasets with xarray()

                          -
                          +
                          -
                          +
                          @@ -2095,14 +2094,14 @@

                          Open datasets with xarray()

                          -
                          +
                          -
                          +
                          @@ -2195,14 +2194,14 @@

                          Open datasets with xarray()

                          -
                          +
                          -
                          +
                          @@ -2295,14 +2294,14 @@

                          Open datasets with xarray()

                          -
                          +
                          -
                          +
                          @@ -2342,7 +2341,6 @@

                          Open datasets with xarray()

                        • Conventions :
                          CF-1.8, ACDD-1.3
                          acknowledgement :
                          This research was carried out by the Jet Propulsion Laboratory, managed by the California Institute of Technology under a contract with the National Aeronautics and Space Administration.
                          author :
                          Ou Wang and Ian Fenty
                          cdm_data_type :
                          Grid
                          comment :
                          Fields provided on a regular lat-lon grid. They have been mapped to the regular lat-lon grid from the original ECCO lat-lon-cap 90 (llc90) native model grid. SSH (dynamic sea surface height) = SSHNOIBC (dynamic sea surface without the inverse barometer correction) - SSHIBC (inverse barometer correction). The inverted barometer correction accounts for variations in sea surface height due to atmospheric pressure variations.
                          coordinates_comment :
                          Note: the global 'coordinates' attribute describes auxillary coordinates.
                          creator_email :
                          ecco-group@mit.edu
                          creator_institution :
                          NASA Jet Propulsion Laboratory (JPL)
                          creator_name :
                          ECCO Consortium
                          creator_type :
                          group
                          creator_url :
                          https://ecco-group.org
                          date_created :
                          2021-09-26T15:28:22
                          date_issued :
                          2021-09-26T15:28:22
                          date_metadata_modified :
                          2021-09-26T15:28:22
                          date_modified :
                          2021-09-26T15:28:22
                          geospatial_bounds_crs :
                          EPSG:4326
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_min :
                          -90.0
                          geospatial_lat_resolution :
                          0.5
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_min :
                          -180.0
                          geospatial_lon_resolution :
                          0.5
                          geospatial_lon_units :
                          degrees_east
                          history :
                          Errata (Version 4, Release 4b) for Version 4, Release 4
                          id :
                          10.5067/ECG5M-SSH4B
                          institution :
                          NASA Jet Propulsion Laboratory (JPL)
                          instrument_vocabulary :
                          GCMD instrument keywords
                          keywords :
                          EARTH SCIENCE SERVICES > MODELS > EARTH SCIENCE REANALYSES/ASSIMILATION MODELS, EARTH SCIENCE > OCEANS > SEA SURFACE TOPOGRAPHY > SEA SURFACE HEIGHT
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          license :
                          Public Domain
                          metadata_link :
                          https://cmr.earthdata.nasa.gov/search/collections.umm_json?ShortName=ECCO_L4_SSH_05DEG_MONTHLY_V4R4B
                          naming_authority :
                          gov.nasa.jpl
                          platform :
                          ERS-1/2, TOPEX/Poseidon, Geosat Follow-On (GFO), ENVISAT, Jason-1, Jason-2, CryoSat-2, SARAL/AltiKa, Jason-3, AVHRR, Aquarius, SSM/I, SSMIS, GRACE, DTU17MDT, Argo, WOCE, GO-SHIP, MEOP, Ice Tethered Profilers (ITP)
                          platform_vocabulary :
                          GCMD platform keywords
                          processing_level :
                          L4
                          product_name :
                          SEA_SURFACE_HEIGHT_mon_mean_2001-12_ECCO_V4r4b_latlon_0p50deg.nc
                          product_time_coverage_end :
                          2018-01-01T00:00:00
                          product_time_coverage_start :
                          1992-01-01T12:00:00
                          product_version :
                          Version 4, Release 4b (Errata for Version 4, Release 4)
                          program :
                          NASA Physical Oceanography, Cryosphere, Modeling, Analysis, and Prediction (MAP)
                          project :
                          Estimating the Circulation and Climate of the Ocean (ECCO)
                          publisher_email :
                          podaac@podaac.jpl.nasa.gov
                          publisher_institution :
                          PO.DAAC
                          publisher_name :
                          Physical Oceanography Distributed Active Archive Center (PO.DAAC)
                          publisher_type :
                          institution
                          publisher_url :
                          https://podaac.jpl.nasa.gov
                          references :
                          ECCO Consortium, Fukumori, I., Wang, O., Fenty, I., Forget, G., Heimbach, P., & Ponte, R. M. 2020. Synopsis of the ECCO Central Production Global Ocean and Sea-Ice State Estimate (Version 4 Release 4). doi:10.5281/zenodo.3765928
                          source :
                          The ECCO V4r4b state estimate was produced by fitting a free-running solution of the MITgcm (checkpoint 66g) to satellite and in situ observational data in a least squares sense using the adjoint method
                          standard_name_vocabulary :
                          NetCDF Climate and Forecast (CF) Metadata Convention
                          summary :
                          This product (Version 4, Release 4b) is the errata for Version 4 Release 4. The errata document is available at https://ecco-group.org/docs/ECCO_V4r4_errata.pdf. This dataset provides monthly-averaged dynamic sea surface height interpolated to a regular 0.5-degree grid from the ECCO Version 4 Release 4 (V4r4b) ocean and sea-ice state estimate. Estimating the Circulation and Climate of the Ocean (ECCO) state estimates are dynamically and kinematically-consistent reconstructions of the three-dimensional, time-evolving ocean, sea-ice, and surface atmospheric states. ECCO V4r4b is a free-running solution of a global, nominally 1-degree configuration of the MIT general circulation model (MITgcm) that has been fit to observations in a least-squares sense. Observational data constraints used in V4r4b include sea surface height (SSH) from satellite altimeters [ERS-1/2, TOPEX/Poseidon, GFO, ENVISAT, Jason-1,2,3, CryoSat-2, and SARAL/AltiKa]; sea surface temperature (SST) from satellite radiometers [AVHRR], sea surface salinity (SSS) from the Aquarius satellite radiometer/scatterometer, ocean bottom pressure (OBP) from the GRACE satellite gravimeter; sea-ice concentration from satellite radiometers [SSM/I and SSMIS], and in-situ ocean temperature and salinity measured with conductivity-temperature-depth (CTD) sensors and expendable bathythermographs (XBTs) from several programs [e.g., WOCE, GO-SHIP, Argo, and others] and platforms [e.g., research vessels, gliders, moorings, ice-tethered profilers, and instrumented pinnipeds]. V4r4b covers the period 1992-01-01T12:00:00 to 2018-01-01T00:00:00.
                          time_coverage_duration :
                          P1M
                          time_coverage_end :
                          2002-01-01T00:00:00
                          time_coverage_resolution :
                          P1M
                          time_coverage_start :
                          2001-12-01T00:00:00
                          title :
                          ECCO Sea Surface Height - Monthly Mean 0.5 Degree (Version 4 Release 4b)
                          uuid :
                          cd67c8ad-0f9e-4cf7-a3c3-4ac4d6016ea5
                        • - @@ -2353,7 +2351,6 @@

                          Concatenate all granules (datasets) via a loop

                          ssh_ds#ssh_ds_group = xr.concat([xr.open_zarr(s3.get_mapper(u)) for u in s3_urls], dim="time", coords='minimal').groupby('time.month')
                          -
                          @@ -2876,14 +2873,14 @@

                          Concatenate all granules (datasets) via a loop

                          '2017-08-16T12:00:00.000000000', '2017-09-16T00:00:00.000000000', '2017-10-16T12:00:00.000000000', '2017-11-16T00:00:00.000000000', '2017-12-16T06:00:00.000000000'], dtype='datetime64[ns]')
                        • time_bnds
                          (time, nv)
                          datetime64[ns]
                          dask.array<chunksize=(1, 2), meta=np.ndarray>
                          comment :
                          Start and end times of averaging period.
                          coverage_content_type :
                          coordinate
                          long_name :
                          time bounds of averaging period
                          -
                        • +
                          -
                          +
                          @@ -2991,14 +2988,14 @@

                          Concatenate all granules (datasets) via a loop

                          -
                          +
                          -
                          +
                          @@ -3091,14 +3088,14 @@

                          Concatenate all granules (datasets) via a loop

                          -
                          +
                          -
                          +
                          @@ -3191,14 +3188,14 @@

                          Concatenate all granules (datasets) via a loop

                          -
                          +
                          -
                          +
                          @@ -3238,7 +3235,6 @@

                          Concatenate all granules (datasets) via a loop

                        • Conventions :
                          CF-1.8, ACDD-1.3
                          acknowledgement :
                          This research was carried out by the Jet Propulsion Laboratory, managed by the California Institute of Technology under a contract with the National Aeronautics and Space Administration.
                          author :
                          Ou Wang and Ian Fenty
                          cdm_data_type :
                          Grid
                          comment :
                          Fields provided on a regular lat-lon grid. They have been mapped to the regular lat-lon grid from the original ECCO lat-lon-cap 90 (llc90) native model grid. SSH (dynamic sea surface height) = SSHNOIBC (dynamic sea surface without the inverse barometer correction) - SSHIBC (inverse barometer correction). The inverted barometer correction accounts for variations in sea surface height due to atmospheric pressure variations.
                          coordinates_comment :
                          Note: the global 'coordinates' attribute describes auxillary coordinates.
                          creator_email :
                          ecco-group@mit.edu
                          creator_institution :
                          NASA Jet Propulsion Laboratory (JPL)
                          creator_name :
                          ECCO Consortium
                          creator_type :
                          group
                          creator_url :
                          https://ecco-group.org
                          date_created :
                          2021-09-26T15:28:22
                          date_issued :
                          2021-09-26T15:28:22
                          date_metadata_modified :
                          2021-09-26T15:28:22
                          date_modified :
                          2021-09-26T15:28:22
                          geospatial_bounds_crs :
                          EPSG:4326
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_min :
                          -90.0
                          geospatial_lat_resolution :
                          0.5
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_min :
                          -180.0
                          geospatial_lon_resolution :
                          0.5
                          geospatial_lon_units :
                          degrees_east
                          history :
                          Errata (Version 4, Release 4b) for Version 4, Release 4
                          id :
                          10.5067/ECG5M-SSH4B
                          institution :
                          NASA Jet Propulsion Laboratory (JPL)
                          instrument_vocabulary :
                          GCMD instrument keywords
                          keywords :
                          EARTH SCIENCE SERVICES > MODELS > EARTH SCIENCE REANALYSES/ASSIMILATION MODELS, EARTH SCIENCE > OCEANS > SEA SURFACE TOPOGRAPHY > SEA SURFACE HEIGHT
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          license :
                          Public Domain
                          metadata_link :
                          https://cmr.earthdata.nasa.gov/search/collections.umm_json?ShortName=ECCO_L4_SSH_05DEG_MONTHLY_V4R4B
                          naming_authority :
                          gov.nasa.jpl
                          platform :
                          ERS-1/2, TOPEX/Poseidon, Geosat Follow-On (GFO), ENVISAT, Jason-1, Jason-2, CryoSat-2, SARAL/AltiKa, Jason-3, AVHRR, Aquarius, SSM/I, SSMIS, GRACE, DTU17MDT, Argo, WOCE, GO-SHIP, MEOP, Ice Tethered Profilers (ITP)
                          platform_vocabulary :
                          GCMD platform keywords
                          processing_level :
                          L4
                          product_name :
                          SEA_SURFACE_HEIGHT_mon_mean_2001-12_ECCO_V4r4b_latlon_0p50deg.nc
                          product_time_coverage_end :
                          2018-01-01T00:00:00
                          product_time_coverage_start :
                          1992-01-01T12:00:00
                          product_version :
                          Version 4, Release 4b (Errata for Version 4, Release 4)
                          program :
                          NASA Physical Oceanography, Cryosphere, Modeling, Analysis, and Prediction (MAP)
                          project :
                          Estimating the Circulation and Climate of the Ocean (ECCO)
                          publisher_email :
                          podaac@podaac.jpl.nasa.gov
                          publisher_institution :
                          PO.DAAC
                          publisher_name :
                          Physical Oceanography Distributed Active Archive Center (PO.DAAC)
                          publisher_type :
                          institution
                          publisher_url :
                          https://podaac.jpl.nasa.gov
                          references :
                          ECCO Consortium, Fukumori, I., Wang, O., Fenty, I., Forget, G., Heimbach, P., & Ponte, R. M. 2020. Synopsis of the ECCO Central Production Global Ocean and Sea-Ice State Estimate (Version 4 Release 4). doi:10.5281/zenodo.3765928
                          source :
                          The ECCO V4r4b state estimate was produced by fitting a free-running solution of the MITgcm (checkpoint 66g) to satellite and in situ observational data in a least squares sense using the adjoint method
                          standard_name_vocabulary :
                          NetCDF Climate and Forecast (CF) Metadata Convention
                          summary :
                          This product (Version 4, Release 4b) is the errata for Version 4 Release 4. The errata document is available at https://ecco-group.org/docs/ECCO_V4r4_errata.pdf. This dataset provides monthly-averaged dynamic sea surface height interpolated to a regular 0.5-degree grid from the ECCO Version 4 Release 4 (V4r4b) ocean and sea-ice state estimate. Estimating the Circulation and Climate of the Ocean (ECCO) state estimates are dynamically and kinematically-consistent reconstructions of the three-dimensional, time-evolving ocean, sea-ice, and surface atmospheric states. ECCO V4r4b is a free-running solution of a global, nominally 1-degree configuration of the MIT general circulation model (MITgcm) that has been fit to observations in a least-squares sense. Observational data constraints used in V4r4b include sea surface height (SSH) from satellite altimeters [ERS-1/2, TOPEX/Poseidon, GFO, ENVISAT, Jason-1,2,3, CryoSat-2, and SARAL/AltiKa]; sea surface temperature (SST) from satellite radiometers [AVHRR], sea surface salinity (SSS) from the Aquarius satellite radiometer/scatterometer, ocean bottom pressure (OBP) from the GRACE satellite gravimeter; sea-ice concentration from satellite radiometers [SSM/I and SSMIS], and in-situ ocean temperature and salinity measured with conductivity-temperature-depth (CTD) sensors and expendable bathythermographs (XBTs) from several programs [e.g., WOCE, GO-SHIP, Argo, and others] and platforms [e.g., research vessels, gliders, moorings, ice-tethered profilers, and instrumented pinnipeds]. V4r4b covers the period 1992-01-01T12:00:00 to 2018-01-01T00:00:00.
                          time_coverage_duration :
                          P1M
                          time_coverage_end :
                          2002-01-01T00:00:00
                          time_coverage_resolution :
                          P1M
                          time_coverage_start :
                          2001-12-01T00:00:00
                          title :
                          ECCO Sea Surface Height - Monthly Mean 0.5 Degree (Version 4 Release 4b)
                          uuid :
                          cd67c8ad-0f9e-4cf7-a3c3-4ac4d6016ea5
                        • - @@ -3327,7 +3323,6 @@

                          Rea root directory: s3://harmony-prod-staging/public/harmony/netcdf-to-zarr/9dd5c9b3-84c4-48e5-907d-2bd21d92a60c/
                          -
                          @@ -3903,14 +3898,14 @@

                          Rea '2017-08-16T12:00:00.000000000', '2017-09-16T00:00:00.000000000', '2017-10-16T12:00:00.000000000', '2017-11-16T00:00:00.000000000', '2017-12-16T06:00:00.000000000'], dtype='datetime64[ns]')

                        • time_bnds
                          (time, nv)
                          datetime64[ns]
                          dask.array<chunksize=(1, 2), meta=np.ndarray>
                          comment :
                          Start and end times of averaging period.
                          coverage_content_type :
                          coordinate
                          long_name :
                          time bounds of averaging period
                          -
                        • +
                          -
                          +
                          @@ -4018,14 +4013,14 @@

                          Rea
                          -

                          +
                          -
                          +
                          @@ -4122,14 +4117,14 @@

                          Rea
                          -

                          +
                          -
                          +
                          @@ -4169,7 +4164,6 @@

                          Rea
                        • Conventions :
                          CF-1.8, ACDD-1.3
                          acknowledgement :
                          This research was carried out by the Jet Propulsion Laboratory, managed by the California Institute of Technology under a contract with the National Aeronautics and Space Administration.
                          author :
                          Ian Fenty and Ou Wang
                          cdm_data_type :
                          Grid
                          comment :
                          Fields provided on a regular lat-lon grid. They have been mapped to the regular lat-lon grid from the original ECCO lat-lon-cap 90 (llc90) native model grid.
                          coordinates_comment :
                          Note: the global 'coordinates' attribute describes auxillary coordinates.
                          creator_email :
                          ecco-group@mit.edu
                          creator_institution :
                          NASA Jet Propulsion Laboratory (JPL)
                          creator_name :
                          ECCO Consortium
                          creator_type :
                          group
                          creator_url :
                          https://ecco-group.org
                          date_created :
                          2020-12-18T09:50:20
                          date_issued :
                          2020-12-18T09:50:20
                          date_metadata_modified :
                          2021-03-15T22:06:59
                          date_modified :
                          2021-03-15T22:06:59
                          geospatial_bounds_crs :
                          EPSG:4326
                          geospatial_lat_max :
                          90.0
                          geospatial_lat_min :
                          -90.0
                          geospatial_lat_resolution :
                          0.5
                          geospatial_lat_units :
                          degrees_north
                          geospatial_lon_max :
                          180.0
                          geospatial_lon_min :
                          -180.0
                          geospatial_lon_resolution :
                          0.5
                          geospatial_lon_units :
                          degrees_east
                          geospatial_vertical_max :
                          0.0
                          geospatial_vertical_min :
                          -6134.5
                          geospatial_vertical_positive :
                          up
                          geospatial_vertical_resolution :
                          variable
                          geospatial_vertical_units :
                          meter
                          history :
                          Inaugural release of an ECCO Central Estimate solution to PO.DAAC
                          id :
                          10.5067/ECG5M-OTS44
                          institution :
                          NASA Jet Propulsion Laboratory (JPL)
                          instrument_vocabulary :
                          GCMD instrument keywords
                          keywords :
                          EARTH SCIENCE SERVICES > MODELS > EARTH SCIENCE REANALYSES/ASSIMILATION MODELS, EARTH SCIENCE > OCEANS > SALINITY/DENSITY > SALINITY, EARTH SCIENCE > OCEANS > OCEAN TEMPERATURE > POTENTIAL TEMPERATURE
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          license :
                          Public Domain
                          metadata_link :
                          https://cmr.earthdata.nasa.gov/search/collections.umm_json?ShortName=ECCO_L4_TEMP_SALINITY_05DEG_MONTHLY_V4R4
                          naming_authority :
                          gov.nasa.jpl
                          platform :
                          ERS-1/2, TOPEX/Poseidon, Geosat Follow-On (GFO), ENVISAT, Jason-1, Jason-2, CryoSat-2, SARAL/AltiKa, Jason-3, AVHRR, Aquarius, SSM/I, SSMIS, GRACE, DTU17MDT, Argo, WOCE, GO-SHIP, MEOP, Ice Tethered Profilers (ITP)
                          platform_vocabulary :
                          GCMD platform keywords
                          processing_level :
                          L4
                          product_name :
                          OCEAN_TEMPERATURE_SALINITY_mon_mean_2001-12_ECCO_V4r4_latlon_0p50deg.nc
                          product_time_coverage_end :
                          2018-01-01T00:00:00
                          product_time_coverage_start :
                          1992-01-01T12:00:00
                          product_version :
                          Version 4, Release 4
                          program :
                          NASA Physical Oceanography, Cryosphere, Modeling, Analysis, and Prediction (MAP)
                          project :
                          Estimating the Circulation and Climate of the Ocean (ECCO)
                          publisher_email :
                          podaac@podaac.jpl.nasa.gov
                          publisher_institution :
                          PO.DAAC
                          publisher_name :
                          Physical Oceanography Distributed Active Archive Center (PO.DAAC)
                          publisher_type :
                          institution
                          publisher_url :
                          https://podaac.jpl.nasa.gov
                          references :
                          ECCO Consortium, Fukumori, I., Wang, O., Fenty, I., Forget, G., Heimbach, P., & Ponte, R. M. 2020. Synopsis of the ECCO Central Production Global Ocean and Sea-Ice State Estimate (Version 4 Release 4). doi:10.5281/zenodo.3765928
                          source :
                          The ECCO V4r4 state estimate was produced by fitting a free-running solution of the MITgcm (checkpoint 66g) to satellite and in situ observational data in a least squares sense using the adjoint method
                          standard_name_vocabulary :
                          NetCDF Climate and Forecast (CF) Metadata Convention
                          summary :
                          This dataset provides monthly-averaged ocean potential temperature and salinity interpolated to a regular 0.5-degree grid from the ECCO Version 4 Release 4 (V4r4) ocean and sea-ice state estimate. Estimating the Circulation and Climate of the Ocean (ECCO) state estimates are dynamically and kinematically-consistent reconstructions of the three-dimensional, time-evolving ocean, sea-ice, and surface atmospheric states. ECCO V4r4 is a free-running solution of a global, nominally 1-degree configuration of the MIT general circulation model (MITgcm) that has been fit to observations in a least-squares sense. Observational data constraints used in V4r4 include sea surface height (SSH) from satellite altimeters [ERS-1/2, TOPEX/Poseidon, GFO, ENVISAT, Jason-1,2,3, CryoSat-2, and SARAL/AltiKa]; sea surface temperature (SST) from satellite radiometers [AVHRR], sea surface salinity (SSS) from the Aquarius satellite radiometer/scatterometer, ocean bottom pressure (OBP) from the GRACE satellite gravimeter; sea-ice concentration from satellite radiometers [SSM/I and SSMIS], and in-situ ocean temperature and salinity measured with conductivity-temperature-depth (CTD) sensors and expendable bathythermographs (XBTs) from several programs [e.g., WOCE, GO-SHIP, Argo, and others] and platforms [e.g., research vessels, gliders, moorings, ice-tethered profilers, and instrumented pinnipeds]. V4r4 covers the period 1992-01-01T12:00:00 to 2018-01-01T00:00:00.
                          time_coverage_duration :
                          P1M
                          time_coverage_end :
                          2002-01-01T00:00:00
                          time_coverage_resolution :
                          P1M
                          time_coverage_start :
                          2001-12-01T00:00:00
                          title :
                          ECCO Ocean Temperature and Salinity - Monthly Mean 0.5 Degree (Version 4 Release 4)
                          uuid :
                          7f718714-4159-11eb-8bbd-0cc47a3f819b
                        • - diff --git a/notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html b/notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html index a6e5f668..8d824d94 100644 --- a/notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html +++ b/notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html @@ -2,7 +2,7 @@ - + @@ -1175,10 +1175,9 @@

                          Search for files/ granules[['GranuleUR', 'Start', 'End']].set_index("GranuleUR")
                          -
                          -

                          +
                          @@ -1254,7 +1253,6 @@

                          Search for files/ -
                          @@ -1536,10 +1534,9 @@

                          Plot
                          result.sel(latitude=slice(-66.,66.)).to_pandas().T.describe().T
                          -
                          -

                          +
                          @@ -1693,7 +1690,6 @@

                          Plot -
                          diff --git a/notebooks/opendap/MUR-OPeNDAP.html b/notebooks/opendap/MUR-OPeNDAP.html index 9b0231a4..aca1fccc 100644 --- a/notebooks/opendap/MUR-OPeNDAP.html +++ b/notebooks/opendap/MUR-OPeNDAP.html @@ -2,7 +2,7 @@ - + @@ -1212,7 +1212,6 @@

                          Request link for
                          cloud_data
                          -
                          @@ -1617,14 +1616,14 @@

                          Request link for '2019-01-29T09:00:00.000000000', '2019-01-30T09:00:00.000000000', '2019-01-31T09:00:00.000000000', '2019-02-01T09:00:00.000000000'], dtype='datetime64[ns]')

                          • analysed_sst
                            (time, lat, lon)
                            float32
                            dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>
                            long_name :
                            analysed sea surface temperature
                            standard_name :
                            sea_surface_foundation_temperature
                            units :
                            kelvin
                            valid_min :
                            -32767
                            valid_max :
                            32767
                            comment :
                            \"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolation
                            source :
                            MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
                            origname :
                            analysed_sst
                            fullnamepath :
                            /analysed_sst
                            -
                        • +
                          -
                          +
                          @@ -1719,14 +1718,14 @@

                          Request link for
                          -

                          +
                          -
                          +
                          @@ -1802,7 +1801,6 @@

                          Request link for 2024-03-12 23:18:44 GMT hyrax-1.17.0-3 https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.dap.nc4?dap4.ce=analysed_sst%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blon%5B000%3A1%3A9000%5D%3Btime%5B0%3A1%3A0%5D%3Banalysis_error%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blat%5B000%3A1%3A9000%5D
                          comment :
                          MUR = \"Multi-scale Ultra-high Reolution\"
                          license :
                          These data are available free of charge under data policy of JPL PO.DAAC.
                          id :
                          MUR-JPL-L4-GLOB-v04.1
                          naming_authority :
                          org.ghrsst
                          product_version :
                          04.1
                          uuid :
                          27665bc0-d5fc-11e1-9b23-0800200c9a66
                          gds_version_id :
                          2.0
                          netcdf_version_id :
                          4.1
                          date_created :
                          20190110T004403Z
                          start_time :
                          20190101T090000Z
                          stop_time :
                          20190101T090000Z
                          time_coverage_start :
                          20181231T210000Z
                          time_coverage_end :
                          20190101T210000Z
                          file_quality_level :
                          3
                          source :
                          MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF
                          platform :
                          Terra, Aqua, GCOM-W, NOAA-19, MetOp-A, Buoys/Ships
                          sensor :
                          MODIS, AMSR2, AVHRR, in-situ
                          Metadata_Conventions :
                          Unidata Observation Dataset v1.0
                          metadata_link :
                          http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1
                          keywords :
                          Oceans > Ocean Temperature > Sea Surface Temperature
                          keywords_vocabulary :
                          NASA Global Change Master Directory (GCMD) Science Keywords
                          standard_name_vocabulary :
                          NetCDF Climate and Forecast (CF) Metadata Convention
                          southernmost_latitude :
                          -90.0
                          northernmost_latitude :
                          90.0
                          westernmost_longitude :
                          -180.0
                          easternmost_longitude :
                          180.0
                          spatial_resolution :
                          0.01 degrees
                          geospatial_lat_units :
                          degrees north
                          geospatial_lat_resolution :
                          0.01 degrees
                          geospatial_lon_units :
                          degrees east
                          geospatial_lon_resolution :
                          0.01 degrees
                          acknowledgment :
                          Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.
                          creator_name :
                          JPL MUR SST project
                          creator_email :
                          ghrsst@podaac.jpl.nasa.gov
                          creator_url :
                          http://mur.jpl.nasa.gov
                          project :
                          NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Program
                          publisher_name :
                          GHRSST Project Office
                          publisher_url :
                          http://www.ghrsst.org
                          publisher_email :
                          ghrsst-po@nceo.ac.uk
                          processing_level :
                          L4
                          cdm_data_type :
                          grid
                          history_json :
                          [{"$schema":"https:\/\/harmony.earthdata.nasa.gov\/schemas\/history\/0.1.0\/history-0.1.0.json","date_time":"2024-03-12T23:18:44.042+0000","program":"hyrax","version":"1.17.0-3","parameters":[{"request_url":"https:\/\/opendap.earthdata.nasa.gov\/providers\/POCLOUD\/collections\/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)\/granules\/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.dap.nc4?dap4.ce=analysed_sst%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blon%5B000%3A1%3A9000%5D%3Btime%5B0%3A1%3A0%5D%3Banalysis_error%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blat%5B000%3A1%3A9000%5D"},{"decoded_constraint":"dap4.ce=analysed_sst[0:1:0][000:1:9000][000:1:9000];lon[000:1:9000];time[0:1:0];analysis_error[0:1:0][000:1:9000][000:1:9000];lat[000:1:9000]"}]}]
                          -
                          #Histogram
                          diff --git a/notebooks/podaac_cmr_s3_links.html b/notebooks/podaac_cmr_s3_links.html
                          index a8d69481..d580017d 100644
                          --- a/notebooks/podaac_cmr_s3_links.html
                          +++ b/notebooks/podaac_cmr_s3_links.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/notebooks/podaac_cmr_tutorial.html b/notebooks/podaac_cmr_tutorial.html
                          index 2d64d08d..bf3e8f9d 100644
                          --- a/notebooks/podaac_cmr_tutorial.html
                          +++ b/notebooks/podaac_cmr_tutorial.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/notebooks/s3/S3-Access.html b/notebooks/s3/S3-Access.html
                          index c28aacbe..d30bb910 100644
                          --- a/notebooks/s3/S3-Access.html
                          +++ b/notebooks/s3/S3-Access.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/notebooks/sentinel-6/Access_Sentinel6_By_CyclePass.html b/notebooks/sentinel-6/Access_Sentinel6_By_CyclePass.html
                          index 3f1796b2..50e80dbe 100644
                          --- a/notebooks/sentinel-6/Access_Sentinel6_By_CyclePass.html
                          +++ b/notebooks/sentinel-6/Access_Sentinel6_By_CyclePass.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/notebooks/sentinel-6/Access_Sentinel6_NRT.html b/notebooks/sentinel-6/Access_Sentinel6_NRT.html
                          index 27435158..64d5f176 100644
                          --- a/notebooks/sentinel-6/Access_Sentinel6_NRT.html
                          +++ b/notebooks/sentinel-6/Access_Sentinel6_NRT.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/notebooks/sentinel-6/S6_Cloud_Notebook.html b/notebooks/sentinel-6/S6_Cloud_Notebook.html
                          index 869834d2..717b7230 100644
                          --- a/notebooks/sentinel-6/S6_Cloud_Notebook.html
                          +++ b/notebooks/sentinel-6/S6_Cloud_Notebook.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/quarto_text/Advanced.html b/quarto_text/Advanced.html
                          index a6759072..cdb331b3 100644
                          --- a/quarto_text/Advanced.html
                          +++ b/quarto_text/Advanced.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/quarto_text/CloudOptimizedExamples.html b/quarto_text/CloudOptimizedExamples.html
                          index 4987c37a..7846830d 100644
                          --- a/quarto_text/CloudOptimizedExamples.html
                          +++ b/quarto_text/CloudOptimizedExamples.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/quarto_text/CloudvsLocalWorkflows.html b/quarto_text/CloudvsLocalWorkflows.html
                          index e4342f63..b14c8522 100644
                          --- a/quarto_text/CloudvsLocalWorkflows.html
                          +++ b/quarto_text/CloudvsLocalWorkflows.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/quarto_text/Contribute.html b/quarto_text/Contribute.html
                          index 74c0aa2f..7c218d68 100644
                          --- a/quarto_text/Contribute.html
                          +++ b/quarto_text/Contribute.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/quarto_text/Dask.html b/quarto_text/Dask.html
                          index d75f52fe..de6ffde9 100644
                          --- a/quarto_text/Dask.html
                          +++ b/quarto_text/Dask.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          diff --git a/quarto_text/DataSubscriberDownloader.html b/quarto_text/DataSubscriberDownloader.html
                          index db9949e9..c6f3b56b 100644
                          --- a/quarto_text/DataSubscriberDownloader.html
                          +++ b/quarto_text/DataSubscriberDownloader.html
                          @@ -2,7 +2,7 @@
                           
                           
                           
                          -
                          +
                           
                           
                           
                          @@ -1229,7 +1229,7 @@ 

                          Advanced Usage

                          Download data by filename

                          If you’re aware of a file you want to download, you can use the -gr option to download by a filename. The -c (COLLECTION) and -d (directory) options are still required.

                          The -gr option works by taking the file name, removing the suffix and searching for a CMR entry called the granuleUR. Some examples of this include:

                          -

                          +
                          diff --git a/quarto_text/DatasetSpecificExamples.html b/quarto_text/DatasetSpecificExamples.html index 7d08b80b..9f486f28 100644 --- a/quarto_text/DatasetSpecificExamples.html +++ b/quarto_text/DatasetSpecificExamples.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/ECCO.html b/quarto_text/ECCO.html index 349ea9bb..74d7be9f 100644 --- a/quarto_text/ECCO.html +++ b/quarto_text/ECCO.html @@ -2,7 +2,7 @@ - + @@ -1059,6 +1059,7 @@

                          Additional Resources

                          ECCO Project Website

                          +

                          Data in Action: Unveiling small-scale ocean circulation through high-resolution Sea Surface Height

                          diff --git a/quarto_text/Experimental.html b/quarto_text/Experimental.html index 1353958e..f98389f7 100644 --- a/quarto_text/Experimental.html +++ b/quarto_text/Experimental.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/GHRSST.html b/quarto_text/GHRSST.html index 9337ccec..0c31ccd2 100644 --- a/quarto_text/GHRSST.html +++ b/quarto_text/GHRSST.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/GIS.html b/quarto_text/GIS.html index 616cd9ed..77ec3a52 100644 --- a/quarto_text/GIS.html +++ b/quarto_text/GIS.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/HowTo.html b/quarto_text/HowTo.html index ebcb5389..ab34fb8c 100644 --- a/quarto_text/HowTo.html +++ b/quarto_text/HowTo.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/OPERA.html b/quarto_text/OPERA.html index ef238e2e..3cf14de9 100644 --- a/quarto_text/OPERA.html +++ b/quarto_text/OPERA.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/Questions.html b/quarto_text/Questions.html index e3d6d1e3..6fe505f9 100644 --- a/quarto_text/Questions.html +++ b/quarto_text/Questions.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/SMAP.html b/quarto_text/SMAP.html index e7c5f1da..01d03d8a 100644 --- a/quarto_text/SMAP.html +++ b/quarto_text/SMAP.html @@ -2,7 +2,7 @@ - + @@ -1046,6 +1046,7 @@

                          Additional Resources

                          NASA Mission Page

                          +

                          Data in Action: Using Coastal Surface Salinity to Monitor Global Water Cycle Changes

                          diff --git a/quarto_text/SMODE.html b/quarto_text/SMODE.html index c5d625bb..d5aed9fb 100644 --- a/quarto_text/SMODE.html +++ b/quarto_text/SMODE.html @@ -2,7 +2,7 @@ - + @@ -1003,6 +1003,7 @@

                          On this page

                        • Additional Resources
                        • @@ -1052,10 +1053,14 @@

                          Science Case St

                          Additional Resources

                          +
                          +

                          Data in Action Story

                          +

                          A Closer Look at the Sub-Mesoscale Ocean Dynamics Experiment (S-MODE)

                          +

                          2022 S-MODE Open Data Workshop

                          https://espo.nasa.gov/s-mode/content/S-MODE_2022_Open_Data_Workshop - Recordings and Presentations

                          -

                          The Submesoscale Ocean Dynamics and Vertical Transport Experiment (S-MODE) science team is hosted a virtual Open Data Workshop on 1 December 2022 from 11:00am – 1:00pm ET to share about the S-MODE mission, to learn about its instrumentation, and find out how to access and use its data products.

                          +

                          The Submesoscale Ocean Dynamics and Vertical Transport Experiment (S-MODE) science team hosted a virtual Open Data Workshop on 1 December 2022 from 11:00am – 1:00pm ET to share about the S-MODE mission, to learn about its instrumentation, and find out how to access and use its data products.

                          diff --git a/quarto_text/SWOT.html b/quarto_text/SWOT.html index 3f1ea534..261905a1 100644 --- a/quarto_text/SWOT.html +++ b/quarto_text/SWOT.html @@ -2,7 +2,7 @@ - + @@ -1046,6 +1046,7 @@

                          On this page

                        • A Priori Databases
                        • Earthdata Webinar
                        • SWOT Community GitHub Repository
                        • +
                        • Data in Action Stories
                        • 2024 SWOT Hydrology Data Access Workshop
                        • 2022 SWOT Ocean Cloud Workshop
                        • @@ -1143,7 +1144,7 @@

                          SWOT Spatial

                          Tips for SWOT Spatial Search

                          To support spatial search of SWOT data products, the following naming conventions may be of help. Tip: use these shortname identifiers below when searching for SWOT data in the NASA Earthdata Search portal or programmatically using the CMR API and/or earthaccess python library.

                          SWOT HR data products use Tiles, Scenes, or Continent-level Swaths IDs depending on the product, which define the spatial extent of what is in each file, as follows in the chart below. Along-track scene and tile numbers are numbered sequentially following the spacecraft flight direction, so the numbers increase from south to north for ascending passes and from north to south for descending passes. SWOT LR products use global swaths and nadir tracks that use pass numbers. See SWOT Spatial Coverage Section above for information to find the pass, tile or scene numbers.

                          -

                          +
                          @@ -1301,6 +1302,11 @@

                          S

                          https://github.com/SWOT-community

                          This is a code space for the global SWOT mission community. We share experience, code, research and much more. Our mission is to increase the value of SWOT.

                          +
                          +

                          Data in Action Stories

                          +

                          Facing the challenges of using high-resolution sea surface height observations from SWOT

                          +

                          Unveiling the first global observations of high resolution Sea Surface Height from SWOT

                          +

                          2024 SWOT Hydrology Data Access Workshop

                          https://podaac.github.io/2024-SWOT-Hydro-Workshop/

                          diff --git a/quarto_text/ScienceDataStories.html b/quarto_text/ScienceDataStories.html index 7e90c1df..c04f9c39 100644 --- a/quarto_text/ScienceDataStories.html +++ b/quarto_text/ScienceDataStories.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/Sentinel6MF.html b/quarto_text/Sentinel6MF.html index e6b35467..c3c3a2b4 100644 --- a/quarto_text/Sentinel6MF.html +++ b/quarto_text/Sentinel6MF.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/TechGuides.html b/quarto_text/TechGuides.html index fc1194dc..0e0b4b97 100644 --- a/quarto_text/TechGuides.html +++ b/quarto_text/TechGuides.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/Tutorials.html b/quarto_text/Tutorials.html index 8a72497c..ab331604 100644 --- a/quarto_text/Tutorials.html +++ b/quarto_text/Tutorials.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/Webinars.html b/quarto_text/Webinars.html index 4a8c9070..b79fac6d 100644 --- a/quarto_text/Webinars.html +++ b/quarto_text/Webinars.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/Workshops.html b/quarto_text/Workshops.html index b7b93d8f..f9b712a9 100644 --- a/quarto_text/Workshops.html +++ b/quarto_text/Workshops.html @@ -2,7 +2,7 @@ - + diff --git a/quarto_text/cheatsheet.html b/quarto_text/cheatsheet.html index b5f4e867..0fc8b6bf 100644 --- a/quarto_text/cheatsheet.html +++ b/quarto_text/cheatsheet.html @@ -2,7 +2,7 @@ - + diff --git a/search.json b/search.json index f86c6fcc..e074092d 100644 --- a/search.json +++ b/search.json @@ -4,7 +4,7 @@ "href": "external/ECCO_download_data.html", "title": "Access to ECCO V4r4 Datasets on a Local Machine", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, ECCO.\nDuped+slightly modified version of the s3 access ipynb. Tested on JPL-issued macbook and my linux box. It starts by setting up a most trusted strategy for batch downloads behind URS ussing curl/wget. Will attempt to add line(s) to your netrc file if needed btw; then it writes your urs cookies to a local file that should effectively “pre-authenticate” future download sessions for those sub domains.", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, ECCO.\nDuped+slightly modified version of the s3 access ipynb. Tested on JPL-issued macbook and my linux box. It starts by setting up a most trusted strategy for batch downloads behind URS ussing curl/wget. Will attempt to add line(s) to your netrc file if needed btw; then it writes your urs cookies to a local file that should effectively “pre-authenticate” future download sessions for those sub domains.", "crumbs": [ "Tutorials", "Dataset Specific", @@ -42,7 +42,7 @@ "href": "external/access-cloud-python.html#python", "title": "How do I access data stored in Earthdata Cloud in Python?", "section": "Python", - "text": "Python\nWe can use the earthaccess python library to grab the file URLs and then access them with the xarray library.\n\n#Import packages\nimport earthaccess\nimport xarray as xr\n\n\n#Authentication with Earthdata Login\nauth = earthaccess.login(strategy=\"netrc\")\n\n\n#Access land ice height from ATLAS/ICESat-2 V005 (10.5067/ATLAS/ATL06.005), searching for data over western Greenland coast over two weeks in July 2022. The data are provided as HDF5 granules (files) that span about 1/14th of an orbit.\n\nresults = earthaccess.search_data(short_name=\"ATL06\",\n version=\"006\",\n cloud_hosted=True,\n temporal = (\"2022-07-17\",\"2022-07-31\"),\n bounding_box = (-51.96423,68.10554,-48.71969,70.70529))\n\nGranules found: 5\n\n\n\n#Use xarray to load the data as a multifile dataset for a single group in the HDF5 file, in this case land ice segments:\nds = xr.open_mfdataset(earthaccess.open(results), group='/gt1l/land_ice_segments')\nds\n\n Opening 5 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (delta_time: 241711)\nCoordinates:\n * delta_time (delta_time) datetime64[ns] 2022-07-18T01:00:46.67...\n latitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n longitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\nData variables:\n atl06_quality_summary (delta_time) int8 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li_sigma (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n segment_id (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n sigma_geo_h (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\nAttributes:\n Description: The land_ice_height group contains the primary set of deriv...\n data_rate: Data within this group are sparse. Data values are provide...xarray.DatasetDimensions:delta_time: 241711Coordinates: (3)delta_time(delta_time)datetime64[ns]2022-07-18T01:00:46.678760592 .....contentType :referenceInformationdescription :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.long_name :Elapsed GPS secondssource :section 4.4standard_name :timearray(['2022-07-18T01:00:46.678760592', '2022-07-18T01:00:46.681322640',\n '2022-07-18T01:00:46.684008720', ..., '2022-07-26T00:49:18.826637808',\n '2022-07-26T00:49:18.829449568', '2022-07-26T00:49:18.832263232'],\n dtype='datetime64[ns]')latitude(delta_time)float64dask.array<chunksize=(78325,), meta=np.ndarray>contentType :physicalMeasurementdescription :Latitude of segment center, WGS84, North=+,long_name :Latitudesource :section 3.10standard_name :latitudeunits :degrees_northvalid_max :90.0valid_min :-90.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nLongitude of segment center, , WGS84, East=+\n\nlong_name :\n\nLongitude\n\nsource :\n\nsection 3.10\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n180.0\n\nvalid_min :\n\n-180.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (5)\n\n\n\n\n\n\n\natl06_quality_summary\n\n\n(delta_time)\n\n\nint8\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nThe ATL06_quality_summary parameter indicates the best-quality subset of all ATL06 data. A zero in this parameter implies that no data-quality tests have found a problem with the segment, a one implies that some potential problem has been found. Users who select only segments with zero values for this flag can be relatively certain of obtaining high-quality data, but will likely miss a significant fraction of usable data, particularly in cloudy, rough, or low-surface-reflectance conditions.\n\nflag_meanings :\n\nbest_quality potential_problem\n\nflag_values :\n\n[0 1]\n\nlong_name :\n\nATL06_Quality_Summary\n\nsource :\n\nsection 4.3\n\nunits :\n\n1\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n236.05 kiB\n76.49 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nStandard land-ice segment height determined by land ice algorithm, corrected for first-photon bias, representing the median- based height of the selected PEs\n\nlong_name :\n\nLand Ice height\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li_sigma\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nPropagated error due to sampling error and FPB correction from the land ice algorithm\n\nlong_name :\n\nExpected RMS segment misfit\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsegment_id\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nreferenceInformation\n\ndescription :\n\nSegment number, counting from the equator. Equal to the segment_id for the second of the two 20m ATL03 segments included in the 40m ATL06 segment\n\nlong_name :\n\nReference Point, m\n\nsource :\n\nsection 3.1.2.1\n\nunits :\n\n1\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsigma_geo_h\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nTotal vertical geolocation error due to PPD and POD, including the effects of horizontal geolocation error on the segment vertical error.\n\nlong_name :\n\nVertical Geolocation Error\n\nsource :\n\nATBD Section 3.10\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\nIndexes: (1)delta_timePandasIndexPandasIndex(DatetimeIndex(['2022-07-18 01:00:46.678760592',\n '2022-07-18 01:00:46.681322640',\n '2022-07-18 01:00:46.684008720',\n '2022-07-18 01:00:46.686753504',\n '2022-07-18 01:00:46.689526560',\n '2022-07-18 01:00:46.692315280',\n '2022-07-18 01:00:46.695049040',\n '2022-07-18 01:00:46.700724096',\n '2022-07-18 01:00:46.703545872',\n '2022-07-18 01:00:46.706366832',\n ...\n '2022-07-26 00:49:18.806914512',\n '2022-07-26 00:49:18.809737328',\n '2022-07-26 00:49:18.812559600',\n '2022-07-26 00:49:18.815380608',\n '2022-07-26 00:49:18.818200224',\n '2022-07-26 00:49:18.821015744',\n '2022-07-26 00:49:18.823827088',\n '2022-07-26 00:49:18.826637808',\n '2022-07-26 00:49:18.829449568',\n '2022-07-26 00:49:18.832263232'],\n dtype='datetime64[ns]', name='delta_time', length=241711, freq=None))Attributes: (2)Description :The land_ice_height group contains the primary set of derived ATL06 products. This includes geolocation, height, and standard error and quality measures for each segment. This group is sparse, meaning that parameters are provided only for pairs of segments for which at least one beam has a valid surface-height measurement.data_rate :Data within this group are sparse. Data values are provided only for those ICESat-2 20m segments where at least one beam has a valid land ice height measurement.", + "text": "Python\nWe can use the earthaccess python library to grab the file URLs and then access them with the xarray library.\n\n#Import packages\nimport earthaccess\nimport xarray as xr\n\n\n#Authentication with Earthdata Login\nauth = earthaccess.login(strategy=\"netrc\")\n\n\n#Access land ice height from ATLAS/ICESat-2 V005 (10.5067/ATLAS/ATL06.005), searching for data over western Greenland coast over two weeks in July 2022. The data are provided as HDF5 granules (files) that span about 1/14th of an orbit.\n\nresults = earthaccess.search_data(short_name=\"ATL06\",\n version=\"006\",\n cloud_hosted=True,\n temporal = (\"2022-07-17\",\"2022-07-31\"),\n bounding_box = (-51.96423,68.10554,-48.71969,70.70529))\n\nGranules found: 5\n\n\n\n#Use xarray to load the data as a multifile dataset for a single group in the HDF5 file, in this case land ice segments:\nds = xr.open_mfdataset(earthaccess.open(results), group='/gt1l/land_ice_segments')\nds\n\n Opening 5 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (delta_time: 241711)\nCoordinates:\n * delta_time (delta_time) datetime64[ns] 2022-07-18T01:00:46.67...\n latitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n longitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\nData variables:\n atl06_quality_summary (delta_time) int8 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li_sigma (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n segment_id (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n sigma_geo_h (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\nAttributes:\n Description: The land_ice_height group contains the primary set of deriv...\n data_rate: Data within this group are sparse. Data values are provide...xarray.DatasetDimensions:delta_time: 241711Coordinates: (3)delta_time(delta_time)datetime64[ns]2022-07-18T01:00:46.678760592 .....contentType :referenceInformationdescription :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.long_name :Elapsed GPS secondssource :section 4.4standard_name :timearray(['2022-07-18T01:00:46.678760592', '2022-07-18T01:00:46.681322640',\n '2022-07-18T01:00:46.684008720', ..., '2022-07-26T00:49:18.826637808',\n '2022-07-26T00:49:18.829449568', '2022-07-26T00:49:18.832263232'],\n dtype='datetime64[ns]')latitude(delta_time)float64dask.array<chunksize=(78325,), meta=np.ndarray>contentType :physicalMeasurementdescription :Latitude of segment center, WGS84, North=+,long_name :Latitudesource :section 3.10standard_name :latitudeunits :degrees_northvalid_max :90.0valid_min :-90.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nLongitude of segment center, , WGS84, East=+\n\nlong_name :\n\nLongitude\n\nsource :\n\nsection 3.10\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n180.0\n\nvalid_min :\n\n-180.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (5)\n\n\n\n\n\n\n\natl06_quality_summary\n\n\n(delta_time)\n\n\nint8\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nThe ATL06_quality_summary parameter indicates the best-quality subset of all ATL06 data. A zero in this parameter implies that no data-quality tests have found a problem with the segment, a one implies that some potential problem has been found. Users who select only segments with zero values for this flag can be relatively certain of obtaining high-quality data, but will likely miss a significant fraction of usable data, particularly in cloudy, rough, or low-surface-reflectance conditions.\n\nflag_meanings :\n\nbest_quality potential_problem\n\nflag_values :\n\n[0 1]\n\nlong_name :\n\nATL06_Quality_Summary\n\nsource :\n\nsection 4.3\n\nunits :\n\n1\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n236.05 kiB\n76.49 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nStandard land-ice segment height determined by land ice algorithm, corrected for first-photon bias, representing the median- based height of the selected PEs\n\nlong_name :\n\nLand Ice height\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li_sigma\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nPropagated error due to sampling error and FPB correction from the land ice algorithm\n\nlong_name :\n\nExpected RMS segment misfit\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsegment_id\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nreferenceInformation\n\ndescription :\n\nSegment number, counting from the equator. Equal to the segment_id for the second of the two 20m ATL03 segments included in the 40m ATL06 segment\n\nlong_name :\n\nReference Point, m\n\nsource :\n\nsection 3.1.2.1\n\nunits :\n\n1\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsigma_geo_h\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nTotal vertical geolocation error due to PPD and POD, including the effects of horizontal geolocation error on the segment vertical error.\n\nlong_name :\n\nVertical Geolocation Error\n\nsource :\n\nATBD Section 3.10\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\nIndexes: (1)delta_timePandasIndexPandasIndex(DatetimeIndex(['2022-07-18 01:00:46.678760592',\n '2022-07-18 01:00:46.681322640',\n '2022-07-18 01:00:46.684008720',\n '2022-07-18 01:00:46.686753504',\n '2022-07-18 01:00:46.689526560',\n '2022-07-18 01:00:46.692315280',\n '2022-07-18 01:00:46.695049040',\n '2022-07-18 01:00:46.700724096',\n '2022-07-18 01:00:46.703545872',\n '2022-07-18 01:00:46.706366832',\n ...\n '2022-07-26 00:49:18.806914512',\n '2022-07-26 00:49:18.809737328',\n '2022-07-26 00:49:18.812559600',\n '2022-07-26 00:49:18.815380608',\n '2022-07-26 00:49:18.818200224',\n '2022-07-26 00:49:18.821015744',\n '2022-07-26 00:49:18.823827088',\n '2022-07-26 00:49:18.826637808',\n '2022-07-26 00:49:18.829449568',\n '2022-07-26 00:49:18.832263232'],\n dtype='datetime64[ns]', name='delta_time', length=241711, freq=None))Attributes: (2)Description :The land_ice_height group contains the primary set of derived ATL06 products. This includes geolocation, height, and standard error and quality measures for each segment. This group is sparse, meaning that parameters are provided only for pairs of segments for which at least one beam has a valid surface-height measurement.data_rate :Data within this group are sparse. Data values are provided only for those ICESat-2 20m segments where at least one beam has a valid land ice height measurement.", "crumbs": [ "How To", "Access Data", @@ -90,7 +90,7 @@ "href": "external/insitu_dataviz_demo.html", "title": "S-MODE Workshop: Science Case Study In Situ", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop\nimport glob\nfrom netCDF4 import Dataset\nimport xarray as xr\nimport numpy as np\nimport matplotlib.pyplot as plt\n\nimport gsw", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop\nimport glob\nfrom netCDF4 import Dataset\nimport xarray as xr\nimport numpy as np\nimport matplotlib.pyplot as plt\n\nimport gsw", "crumbs": [ "Tutorials", "Dataset Specific", @@ -128,7 +128,7 @@ "href": "external/access-local-python.html#earthaccess", "title": "How do I access Cloud Data from my Local Machine in Python?", "section": "earthaccess", - "text": "earthaccess\nWe can use the earthaccess python library to grab the file URLs and then access them with the xarray library.\n\n#Import packages\nimport earthaccess\nimport xarray as xr\n\n\n#Authentication with Earthdata Login\nauth = earthaccess.login(strategy=\"netrc\")\n\nYou're now authenticated with NASA Earthdata Login\nUsing token with expiration date: 10/30/2023\nUsing .netrc file for EDL\n\n\n\n#Access land ice height from ATLAS/ICESat-2 V005 (10.5067/ATLAS/ATL06.005), searching for data over western Greenland coast over two weeks in July 2022. The data are provided as HDF5 granules (files) that span about 1/14th of an orbit.\n\nresults = earthaccess.search_data(short_name=\"ATL06\",\n version=\"005\",\n cloud_hosted=True,\n temporal = (\"2022-07-17\",\"2022-07-31\"),\n bounding_box = (-51.96423,68.10554,-48.71969,70.70529))\n\nGranules found: 5\n\n\n\nfiles = earthaccess.download(results, \"./local_folder\")\n\ndownloaded_files = []\nfor f in files: \n file = \"local_folder/\"+ f\n downloaded_files.append(file)\n\n Getting 5 granules, approx download size: 0.0 GB\nFile ATL06_20220718010029_03991603_005_01.h5 already downloaded\nFile ATL06_20220718134522_04071605_005_01.h5 already downloaded\nFile ATL06_20220722005209_04601603_005_01.h5 already downloaded\nFile ATL06_20220726004352_05211603_005_01.h5 already downloaded\nFile ATL06_20220722133704_04681605_005_01.h5 already downloaded\n\n\n\n\n\n\n\n\n\n\n\n['local_folder/ATL06_20220718010029_03991603_005_01.h5',\n 'local_folder/ATL06_20220718134522_04071605_005_01.h5',\n 'local_folder/ATL06_20220722005209_04601603_005_01.h5',\n 'local_folder/ATL06_20220722133704_04681605_005_01.h5',\n 'local_folder/ATL06_20220726004352_05211603_005_01.h5']\n\n\n\n#Use xarray to load the data as a multifile dataset for a single group in the HDF5 file, in this case land ice segments:\nds = xr.open_mfdataset(downloaded_files, group='/gt1l/land_ice_segments', engine='h5netcdf')\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (delta_time: 241711)\nCoordinates:\n * delta_time (delta_time) datetime64[ns] 2022-07-18T01:00:46.67...\n latitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n longitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\nData variables:\n atl06_quality_summary (delta_time) int8 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li_sigma (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n segment_id (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n sigma_geo_h (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\nAttributes:\n Description: The land_ice_height group contains the primary set of deriv...\n data_rate: Data within this group are sparse. Data values are provide...xarray.DatasetDimensions:delta_time: 241711Coordinates: (3)delta_time(delta_time)datetime64[ns]2022-07-18T01:00:46.678760592 .....contentType :referenceInformationdescription :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.long_name :Elapsed GPS secondssource :section 4.4standard_name :timearray(['2022-07-18T01:00:46.678760592', '2022-07-18T01:00:46.681322640',\n '2022-07-18T01:00:46.684008720', ..., '2022-07-26T00:49:18.826637808',\n '2022-07-26T00:49:18.829449568', '2022-07-26T00:49:18.832263232'],\n dtype='datetime64[ns]')latitude(delta_time)float64dask.array<chunksize=(78325,), meta=np.ndarray>contentType :physicalMeasurementdescription :Latitude of segment center, WGS84, North=+,long_name :Latitudesource :section 3.10standard_name :latitudeunits :degrees_northvalid_max :90.0valid_min :-90.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nLongitude of segment center, , WGS84, East=+\n\nlong_name :\n\nLongitude\n\nsource :\n\nsection 3.10\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n180.0\n\nvalid_min :\n\n-180.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (5)\n\n\n\n\n\n\n\natl06_quality_summary\n\n\n(delta_time)\n\n\nint8\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nThe ATL06_quality_summary parameter indicates the best-quality subset of all ATL06 data. A zero in this parameter implies that no data-quality tests have found a problem with the segment, a one implies that some potential problem has been found. Users who select only segments with zero values for this flag can be relatively certain of obtaining high-quality data, but will likely miss a significant fraction of usable data, particularly in cloudy, rough, or low-surface-reflectance conditions.\n\nflag_meanings :\n\nbest_quality potential_problem\n\nflag_values :\n\n[0 1]\n\nlong_name :\n\nATL06_Quality_Summary\n\nsource :\n\nsection 4.3\n\nunits :\n\n1\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n236.05 kiB\n76.49 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nStandard land-ice segment height determined by land ice algorithm, corrected for first-photon bias, representing the median- based height of the selected PEs\n\nlong_name :\n\nLand Ice height\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li_sigma\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nPropagated error due to sampling error and FPB correction from the land ice algorithm\n\nlong_name :\n\nExpected RMS segment misfit\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsegment_id\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nreferenceInformation\n\ndescription :\n\nSegment number, counting from the equator. Equal to the segment_id for the second of the two 20m ATL03 segments included in the 40m ATL06 segment\n\nlong_name :\n\nReference Point, m\n\nsource :\n\nsection 3.1.2.1\n\nunits :\n\n1\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsigma_geo_h\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nTotal vertical geolocation error due to PPD and POD, including the effects of horizontal geolocation error on the segment vertical error.\n\nlong_name :\n\nVertical Geolocation Error\n\nsource :\n\nATBD Section 3.10\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\nIndexes: (1)delta_timePandasIndexPandasIndex(DatetimeIndex(['2022-07-18 01:00:46.678760592',\n '2022-07-18 01:00:46.681322640',\n '2022-07-18 01:00:46.684008720',\n '2022-07-18 01:00:46.686753504',\n '2022-07-18 01:00:46.689526560',\n '2022-07-18 01:00:46.692315280',\n '2022-07-18 01:00:46.695049040',\n '2022-07-18 01:00:46.700724096',\n '2022-07-18 01:00:46.703545872',\n '2022-07-18 01:00:46.706366832',\n ...\n '2022-07-26 00:49:18.806914512',\n '2022-07-26 00:49:18.809737328',\n '2022-07-26 00:49:18.812559600',\n '2022-07-26 00:49:18.815380608',\n '2022-07-26 00:49:18.818200224',\n '2022-07-26 00:49:18.821015744',\n '2022-07-26 00:49:18.823827088',\n '2022-07-26 00:49:18.826637808',\n '2022-07-26 00:49:18.829449568',\n '2022-07-26 00:49:18.832263232'],\n dtype='datetime64[ns]', name='delta_time', length=241711, freq=None))Attributes: (2)Description :The land_ice_height group contains the primary set of derived ATL06 products. This includes geolocation, height, and standard error and quality measures for each segment. This group is sparse, meaning that parameters are provided only for pairs of segments for which at least one beam has a valid surface-height measurement.data_rate :Data within this group are sparse. Data values are provided only for those ICESat-2 20m segments where at least one beam has a valid land ice height measurement.", + "text": "earthaccess\nWe can use the earthaccess python library to grab the file URLs and then access them with the xarray library.\n\n#Import packages\nimport earthaccess\nimport xarray as xr\n\n\n#Authentication with Earthdata Login\nauth = earthaccess.login(strategy=\"netrc\")\n\nYou're now authenticated with NASA Earthdata Login\nUsing token with expiration date: 10/30/2023\nUsing .netrc file for EDL\n\n\n\n#Access land ice height from ATLAS/ICESat-2 V005 (10.5067/ATLAS/ATL06.005), searching for data over western Greenland coast over two weeks in July 2022. The data are provided as HDF5 granules (files) that span about 1/14th of an orbit.\n\nresults = earthaccess.search_data(short_name=\"ATL06\",\n version=\"005\",\n cloud_hosted=True,\n temporal = (\"2022-07-17\",\"2022-07-31\"),\n bounding_box = (-51.96423,68.10554,-48.71969,70.70529))\n\nGranules found: 5\n\n\n\nfiles = earthaccess.download(results, \"./local_folder\")\n\ndownloaded_files = []\nfor f in files: \n file = \"local_folder/\"+ f\n downloaded_files.append(file)\n\n Getting 5 granules, approx download size: 0.0 GB\nFile ATL06_20220718010029_03991603_005_01.h5 already downloaded\nFile ATL06_20220718134522_04071605_005_01.h5 already downloaded\nFile ATL06_20220722005209_04601603_005_01.h5 already downloaded\nFile ATL06_20220726004352_05211603_005_01.h5 already downloaded\nFile ATL06_20220722133704_04681605_005_01.h5 already downloaded\n\n\n\n\n\n\n\n\n\n\n\n['local_folder/ATL06_20220718010029_03991603_005_01.h5',\n 'local_folder/ATL06_20220718134522_04071605_005_01.h5',\n 'local_folder/ATL06_20220722005209_04601603_005_01.h5',\n 'local_folder/ATL06_20220722133704_04681605_005_01.h5',\n 'local_folder/ATL06_20220726004352_05211603_005_01.h5']\n\n\n\n#Use xarray to load the data as a multifile dataset for a single group in the HDF5 file, in this case land ice segments:\nds = xr.open_mfdataset(downloaded_files, group='/gt1l/land_ice_segments', engine='h5netcdf')\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (delta_time: 241711)\nCoordinates:\n * delta_time (delta_time) datetime64[ns] 2022-07-18T01:00:46.67...\n latitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n longitude (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\nData variables:\n atl06_quality_summary (delta_time) int8 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n h_li_sigma (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\n segment_id (delta_time) float64 dask.array<chunksize=(78325,), meta=np.ndarray>\n sigma_geo_h (delta_time) float32 dask.array<chunksize=(78325,), meta=np.ndarray>\nAttributes:\n Description: The land_ice_height group contains the primary set of deriv...\n data_rate: Data within this group are sparse. Data values are provide...xarray.DatasetDimensions:delta_time: 241711Coordinates: (3)delta_time(delta_time)datetime64[ns]2022-07-18T01:00:46.678760592 .....contentType :referenceInformationdescription :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.long_name :Elapsed GPS secondssource :section 4.4standard_name :timearray(['2022-07-18T01:00:46.678760592', '2022-07-18T01:00:46.681322640',\n '2022-07-18T01:00:46.684008720', ..., '2022-07-26T00:49:18.826637808',\n '2022-07-26T00:49:18.829449568', '2022-07-26T00:49:18.832263232'],\n dtype='datetime64[ns]')latitude(delta_time)float64dask.array<chunksize=(78325,), meta=np.ndarray>contentType :physicalMeasurementdescription :Latitude of segment center, WGS84, North=+,long_name :Latitudesource :section 3.10standard_name :latitudeunits :degrees_northvalid_max :90.0valid_min :-90.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nLongitude of segment center, , WGS84, East=+\n\nlong_name :\n\nLongitude\n\nsource :\n\nsection 3.10\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n180.0\n\nvalid_min :\n\n-180.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (5)\n\n\n\n\n\n\n\natl06_quality_summary\n\n\n(delta_time)\n\n\nint8\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nThe ATL06_quality_summary parameter indicates the best-quality subset of all ATL06 data. A zero in this parameter implies that no data-quality tests have found a problem with the segment, a one implies that some potential problem has been found. Users who select only segments with zero values for this flag can be relatively certain of obtaining high-quality data, but will likely miss a significant fraction of usable data, particularly in cloudy, rough, or low-surface-reflectance conditions.\n\nflag_meanings :\n\nbest_quality potential_problem\n\nflag_values :\n\n[0 1]\n\nlong_name :\n\nATL06_Quality_Summary\n\nsource :\n\nsection 4.3\n\nunits :\n\n1\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n236.05 kiB\n76.49 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nphysicalMeasurement\n\ndescription :\n\nStandard land-ice segment height determined by land ice algorithm, corrected for first-photon bias, representing the median- based height of the selected PEs\n\nlong_name :\n\nLand Ice height\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nh_li_sigma\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nPropagated error due to sampling error and FPB correction from the land ice algorithm\n\nlong_name :\n\nExpected RMS segment misfit\n\nsource :\n\nsection 4.4\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsegment_id\n\n\n(delta_time)\n\n\nfloat64\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nreferenceInformation\n\ndescription :\n\nSegment number, counting from the equator. Equal to the segment_id for the second of the two 20m ATL03 segments included in the 40m ATL06 segment\n\nlong_name :\n\nReference Point, m\n\nsource :\n\nsection 3.1.2.1\n\nunits :\n\n1\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.84 MiB\n611.91 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\n\n\nsigma_geo_h\n\n\n(delta_time)\n\n\nfloat32\n\n\ndask.array<chunksize=(78325,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncontentType :\n\nqualityInformation\n\ndescription :\n\nTotal vertical geolocation error due to PPD and POD, including the effects of horizontal geolocation error on the segment vertical error.\n\nlong_name :\n\nVertical Geolocation Error\n\nsource :\n\nATBD Section 3.10\n\nunits :\n\nmeters\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.92 MiB\n305.96 kiB\n\n\nShape\n(241711,)\n(78325,)\n\n\nDask graph\n5 chunks in 11 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 241711 1\n\n\n\n\n\n\nIndexes: (1)delta_timePandasIndexPandasIndex(DatetimeIndex(['2022-07-18 01:00:46.678760592',\n '2022-07-18 01:00:46.681322640',\n '2022-07-18 01:00:46.684008720',\n '2022-07-18 01:00:46.686753504',\n '2022-07-18 01:00:46.689526560',\n '2022-07-18 01:00:46.692315280',\n '2022-07-18 01:00:46.695049040',\n '2022-07-18 01:00:46.700724096',\n '2022-07-18 01:00:46.703545872',\n '2022-07-18 01:00:46.706366832',\n ...\n '2022-07-26 00:49:18.806914512',\n '2022-07-26 00:49:18.809737328',\n '2022-07-26 00:49:18.812559600',\n '2022-07-26 00:49:18.815380608',\n '2022-07-26 00:49:18.818200224',\n '2022-07-26 00:49:18.821015744',\n '2022-07-26 00:49:18.823827088',\n '2022-07-26 00:49:18.826637808',\n '2022-07-26 00:49:18.829449568',\n '2022-07-26 00:49:18.832263232'],\n dtype='datetime64[ns]', name='delta_time', length=241711, freq=None))Attributes: (2)Description :The land_ice_height group contains the primary set of derived ATL06 products. This includes geolocation, height, and standard error and quality measures for each segment. This group is sparse, meaning that parameters are provided only for pairs of segments for which at least one beam has a valid surface-height measurement.data_rate :Data within this group are sparse. Data values are provided only for those ICESat-2 20m segments where at least one beam has a valid land ice height measurement.", "crumbs": [ "How To", "Access Data", @@ -140,7 +140,7 @@ "href": "external/SWOT_SSH_dashboard.html", "title": "Integrating Dask, Kerchunk, Zarr and Xarray", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, the-coding-club.", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, the-coding-club.", "crumbs": [ "Advanced Cloud", "Dask, Kerchunk, & Zarr" @@ -173,7 +173,7 @@ "href": "external/SWOT_SSH_dashboard.html#start-dask-cluster", "title": "Integrating Dask, Kerchunk, Zarr and Xarray", "section": "Start Dask cluster", - "text": "Start Dask cluster\n\nData can be read from s3 in parallel and used by hvplot\n\n\nclient = Client()\nclient\n\n\n\n \n \n Client\n Client-a98b3e17-0bf6-11ef-a03f-026f296dd6e0\n \n\n\n\nConnection method: Cluster object\nCluster type: distributed.LocalCluster\n\n\nDashboard: /user/ayushnag/proxy/8787/status\n\n\n\n\n\nLaunch dashboard in JupyterLab\n\n\n\n\nCluster Info\n\n\n\n\n\n\n\nLocalCluster\nb2c50b04\n\n\n\nDashboard: /user/ayushnag/proxy/8787/status\nWorkers: 4\n\n\nTotal threads: 4\nTotal memory: 29.67 GiB\n\n\nStatus: running\nUsing processes: True\n\n\n\n\n\n\n\nScheduler Info\n\n\n\n\n\n\n\nScheduler\nScheduler-fbf59411-ff23-476d-8aee-b7db54450a06\n\n\n\nComm: tcp://127.0.0.1:42863\nWorkers: 4\n\n\nDashboard: /user/ayushnag/proxy/8787/status\nTotal threads: 4\n\n\nStarted: Just now\nTotal memory: 29.67 GiB\n\n\n\n\n\n\n\n\nWorkers\n\n\n\n\n\n\n\n\n\nWorker: 0\n\n\n\n\nComm: tcp://127.0.0.1:40817\nTotal threads: 1\n\n\nDashboard: /user/ayushnag/proxy/45049/status\nMemory: 7.42 GiB\n\n\nNanny: tcp://127.0.0.1:33155\n\n\n\nLocal directory: /tmp/dask-scratch-space/worker-64j5i085\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nWorker: 1\n\n\n\n\nComm: tcp://127.0.0.1:46235\nTotal threads: 1\n\n\nDashboard: /user/ayushnag/proxy/42525/status\nMemory: 7.42 GiB\n\n\nNanny: tcp://127.0.0.1:43931\n\n\n\nLocal directory: /tmp/dask-scratch-space/worker-hzb_4wkm", + "text": "Start Dask cluster\n\nData can be read from s3 in parallel and used by hvplot\n\n\nclient = Client()\nclient\n\n\n \n \n Client\n Client-a98b3e17-0bf6-11ef-a03f-026f296dd6e0\n \n\n\n\nConnection method: Cluster object\nCluster type: distributed.LocalCluster\n\n\nDashboard: /user/ayushnag/proxy/8787/status\n\n\n\n\n\nLaunch dashboard in JupyterLab\n\n\n\n\nCluster Info\n\n\n\n\n\n\n\nLocalCluster\nb2c50b04\n\n\n\nDashboard: /user/ayushnag/proxy/8787/status\nWorkers: 4\n\n\nTotal threads: 4\nTotal memory: 29.67 GiB\n\n\nStatus: running\nUsing processes: True\n\n\n\n\n\n\n\nScheduler Info\n\n\n\n\n\n\n\nScheduler\nScheduler-fbf59411-ff23-476d-8aee-b7db54450a06\n\n\n\nComm: tcp://127.0.0.1:42863\nWorkers: 4\n\n\nDashboard: /user/ayushnag/proxy/8787/status\nTotal threads: 4\n\n\nStarted: Just now\nTotal memory: 29.67 GiB\n\n\n\n\n\n\n\n\nWorkers\n\n\n\n\n\n\n\n\n\nWorker: 0\n\n\n\n\nComm: tcp://127.0.0.1:40817\nTotal threads: 1\n\n\nDashboard: /user/ayushnag/proxy/45049/status\nMemory: 7.42 GiB\n\n\nNanny: tcp://127.0.0.1:33155\n\n\n\nLocal directory: /tmp/dask-scratch-space/worker-64j5i085\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nWorker: 1\n\n\n\n\nComm: tcp://127.0.0.1:46235\nTotal threads: 1\n\n\nDashboard: /user/ayushnag/proxy/42525/status\nMemory: 7.42 GiB\n\n\nNanny: tcp://127.0.0.1:43931\n\n\n\nLocal directory: /tmp/dask-scratch-space/worker-hzb_4wkm", "crumbs": [ "Advanced Cloud", "Dask, Kerchunk, & Zarr" @@ -206,7 +206,7 @@ "href": "external/SWOT_SSH_dashboard.html#read-json-from-veda-and-save-locally", "title": "Integrating Dask, Kerchunk, Zarr and Xarray", "section": "Read JSON from VEDA and save locally", - "text": "Read JSON from VEDA and save locally\n\nveda = s3fs.S3FileSystem()\nwith veda.open(\"s3://veda-data-store-staging/SWOT_L2_LR_SSH_2.0/SWOT_L2_LR_SSH_Expert_2.0.json\", 'r') as infile:\n with open(\"SWOT_L2_LR_SSH_Expert_2.0.json\", 'w') as outfile:\n ujson.dump(ujson.load(infile), outfile)\n\n\n%%time\ndata = xr.open_dataset(\n \"reference://\", engine=\"zarr\", chunks={},\n backend_kwargs={\n \"storage_options\": \n {\"fo\": \"SWOT_L2_LR_SSH_Expert_2.0.json\",\n \"remote_protocol\": \"s3\",\n \"remote_options\": {\"anon\": False, \"key\": creds['accessKeyId'], \"secret\": creds['secretAccessKey'], \"token\": creds[\"sessionToken\"]}},\n \"consolidated\": False\n }\n)\ndata\n\nCPU times: user 148 ms, sys: 17.1 ms, total: 165 ms\nWall time: 231 ms\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset> Size: 2TB\nDimensions: (cycle_num: 8, pass_num: 584,\n num_lines: 9866, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) int64 64B 7 8 9 ... 13 14\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 369MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 369MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n * pass_num (pass_num) int64 5kB 1 2 ... 583 584\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 369MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n distance_to_coast (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n ... ...\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float64 738MB dask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n wind_speed_ssb_cor_source (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n contact: podaac@jpl.nasa.gov\n crid: PIC0\n cycle_number: 7\n ellipsoid_flattening: 0.0033528106647474805\n ellipsoid_semi_major_axis: 6378137.0\n ... ...\n xref_pole_location_file: SMM_PO1_AXXCNE20231125_020...\n xref_precipitation_files: SMM_CRR_AXFCNE20231123_065...\n xref_reforbittrack_files: SWOT_RefOrbitTrack125mPass...\n xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052...\n xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta...\n xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...xarray.DatasetDimensions:cycle_num: 8pass_num: 584num_lines: 9866num_pixels: 69num_sides: 2Coordinates: (6)cycle_num(cycle_num)int647 8 9 10 11 12 13 14array([ 7, 8, 9, 10, 11, 12, 13, 14])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nint64\n\n\n1 2 3 4 5 6 ... 580 581 582 583 584\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([ 1, 2, 3, ..., 582, 583, 584])\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n-21000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from crossover calibration\n\nquality_flag :\n\nheight_cor_xover_qual\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nt02 mean wave period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nunits :\n\ns\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[0, 4, 5, 6, 7, 8, 64]\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n64\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.83 MiB\n38.54 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nobject numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nquality_flag :\n\nssh_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nquality_flag :\n\nsig0_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nquality_flag :\n\nsig0_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_2_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427359\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862815\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_2_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809460191\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4212113375\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_2_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3876569055\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4279222239\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nquality_flag :\n\nswh_karin_qual\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\nflag_masks :\n\n[8, 16, 32, 128, 256, 512, 1024, 2048, 4096, 8192, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809361848\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nquality_flag :\n\norbit_qual\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nVolumetric correlation.\n\nlong_name :\n\nvolumetric correlation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n20000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427352\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862808\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\nIndexes: (2)cycle_numPandasIndexPandasIndex(Index([7, 8, 9, 10, 11, 12, 13, 14], dtype='int64', name='cycle_num'))pass_numPandasIndexPandasIndex(Index([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,\n ...\n 575, 576, 577, 578, 579, 580, 581, 582, 583, 584],\n dtype='int64', name='pass_num', length=584))Attributes: (62)Conventions :CF-1.7contact :podaac@jpl.nasa.govcrid :PIC0cycle_number :7ellipsoid_flattening :0.0033528106647474805ellipsoid_semi_major_axis :6378137.0equator_longitude :0.17equator_time :2023-11-23T10:30:01.764000Zgeospatial_lat_max :78.27206799999999geospatial_lat_min :-78.271942geospatial_lon_max :83.89423599999998geospatial_lon_min :276.449703good_ocean_data_percent :62.825390889756235history :2023-11-25T21:21:19Z : Creationinstitution :CNESleft_first_latitude :-77.05370099999999left_first_longitude :276.469074left_last_latitude :78.27200599999999left_last_longitude :83.89423599999999pass_number :1pge_name :PGE_L2_LR_SSHpge_version :5.0.2platform :SWOTproduct_file_id :Expertproduct_version :01reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :V1.2.1right_first_latitude :-78.27186999999999right_first_longitude :276.449703right_last_latitude :77.053837right_last_longitude :83.87640999999999short_name :L2_LR_SSHsource :Ka-band radar interferometerssha_variance :0.0860590883812041time_coverage_end :2023-11-23T10:55:43.756871time_coverage_start :2023-11-23T10:04:15.708763title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavetransmit_antenna :minus_ywavelength :0.008385803020979021xref_dac_files :SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000xref_geco_database_version :v102xref_gim_files :JPLQ3270.23Ixref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.ncxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.ncxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_wind_files :SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_model_significant_wave_height_files :SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_pole_location_file :SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000xref_precipitation_files :SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grbxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_sea_ice_mask_files :SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_wave_model_files :SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb\n\n\n\n\nprint(f'{data.nbytes / 1e12} TB')\n\n1.867173812352 TB", + "text": "Read JSON from VEDA and save locally\n\nveda = s3fs.S3FileSystem()\nwith veda.open(\"s3://veda-data-store-staging/SWOT_L2_LR_SSH_2.0/SWOT_L2_LR_SSH_Expert_2.0.json\", 'r') as infile:\n with open(\"SWOT_L2_LR_SSH_Expert_2.0.json\", 'w') as outfile:\n ujson.dump(ujson.load(infile), outfile)\n\n\n%%time\ndata = xr.open_dataset(\n \"reference://\", engine=\"zarr\", chunks={},\n backend_kwargs={\n \"storage_options\": \n {\"fo\": \"SWOT_L2_LR_SSH_Expert_2.0.json\",\n \"remote_protocol\": \"s3\",\n \"remote_options\": {\"anon\": False, \"key\": creds['accessKeyId'], \"secret\": creds['secretAccessKey'], \"token\": creds[\"sessionToken\"]}},\n \"consolidated\": False\n }\n)\ndata\n\nCPU times: user 148 ms, sys: 17.1 ms, total: 165 ms\nWall time: 231 ms\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset> Size: 2TB\nDimensions: (cycle_num: 8, pass_num: 584,\n num_lines: 9866, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) int64 64B 7 8 9 ... 13 14\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 369MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 369MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n * pass_num (pass_num) int64 5kB 1 2 ... 583 584\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 369MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n distance_to_coast (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n ... ...\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float64 25GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float64 738MB dask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n wind_speed_ssb_cor_source (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 13GB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n contact: podaac@jpl.nasa.gov\n crid: PIC0\n cycle_number: 7\n ellipsoid_flattening: 0.0033528106647474805\n ellipsoid_semi_major_axis: 6378137.0\n ... ...\n xref_pole_location_file: SMM_PO1_AXXCNE20231125_020...\n xref_precipitation_files: SMM_CRR_AXFCNE20231123_065...\n xref_reforbittrack_files: SWOT_RefOrbitTrack125mPass...\n xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052...\n xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta...\n xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...xarray.DatasetDimensions:cycle_num: 8pass_num: 584num_lines: 9866num_pixels: 69num_sides: 2Coordinates: (6)cycle_num(cycle_num)int647 8 9 10 11 12 13 14array([ 7, 8, 9, 10, 11, 12, 13, 14])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nint64\n\n\n1 2 3 4 5 6 ... 580 581 582 583 584\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([ 1, 2, 3, ..., 582, 583, 584])\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n-21000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from crossover calibration\n\nquality_flag :\n\nheight_cor_xover_qual\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nt02 mean wave period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nunits :\n\ns\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[0, 4, 5, 6, 7, 8, 64]\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n64\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.83 MiB\n38.54 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nobject numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nquality_flag :\n\nssh_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nquality_flag :\n\nsig0_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nquality_flag :\n\nsig0_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_2_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427359\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862815\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_2_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809460191\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4212113375\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_2_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3876569055\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4279222239\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nquality_flag :\n\nswh_karin_qual\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\nflag_masks :\n\n[8, 16, 32, 128, 256, 512, 1024, 2048, 4096, 8192, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809361848\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nquality_flag :\n\norbit_qual\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n351.67 MiB\n77.08 kiB\n\n\nShape\n(8, 584, 9866)\n(1, 1, 9866)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 584 8\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nVolumetric correlation.\n\nlong_name :\n\nvolumetric correlation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n20000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427352\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862808\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n23.70 GiB\n5.19 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n703.34 MiB\n154.16 kiB\n\n\nShape\n(8, 584, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 9866 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.85 GiB\n2.60 MiB\n\n\nShape\n(8, 584, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n4672 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 69 9866 584\n\n\n\n\n\n\nIndexes: (2)cycle_numPandasIndexPandasIndex(Index([7, 8, 9, 10, 11, 12, 13, 14], dtype='int64', name='cycle_num'))pass_numPandasIndexPandasIndex(Index([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,\n ...\n 575, 576, 577, 578, 579, 580, 581, 582, 583, 584],\n dtype='int64', name='pass_num', length=584))Attributes: (62)Conventions :CF-1.7contact :podaac@jpl.nasa.govcrid :PIC0cycle_number :7ellipsoid_flattening :0.0033528106647474805ellipsoid_semi_major_axis :6378137.0equator_longitude :0.17equator_time :2023-11-23T10:30:01.764000Zgeospatial_lat_max :78.27206799999999geospatial_lat_min :-78.271942geospatial_lon_max :83.89423599999998geospatial_lon_min :276.449703good_ocean_data_percent :62.825390889756235history :2023-11-25T21:21:19Z : Creationinstitution :CNESleft_first_latitude :-77.05370099999999left_first_longitude :276.469074left_last_latitude :78.27200599999999left_last_longitude :83.89423599999999pass_number :1pge_name :PGE_L2_LR_SSHpge_version :5.0.2platform :SWOTproduct_file_id :Expertproduct_version :01reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :V1.2.1right_first_latitude :-78.27186999999999right_first_longitude :276.449703right_last_latitude :77.053837right_last_longitude :83.87640999999999short_name :L2_LR_SSHsource :Ka-band radar interferometerssha_variance :0.0860590883812041time_coverage_end :2023-11-23T10:55:43.756871time_coverage_start :2023-11-23T10:04:15.708763title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavetransmit_antenna :minus_ywavelength :0.008385803020979021xref_dac_files :SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000xref_geco_database_version :v102xref_gim_files :JPLQ3270.23Ixref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.ncxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.ncxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_wind_files :SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_model_significant_wave_height_files :SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_pole_location_file :SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000xref_precipitation_files :SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grbxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_sea_ice_mask_files :SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_wave_model_files :SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb\n\n\n\nprint(f'{data.nbytes / 1e12} TB')\n\n1.867173812352 TB", "crumbs": [ "Advanced Cloud", "Dask, Kerchunk, & Zarr" @@ -272,7 +272,7 @@ "href": "external/SWOT_SSH_dashboard.html#subset-granules-temporally", "title": "Integrating Dask, Kerchunk, Zarr and Xarray", "section": "Subset granules temporally", - "text": "Subset granules temporally\n\ndef subset_temporal(data, start, end):\n mask_time = (data.start_time >= start) & (data.start_time <= end)\n data_s = data.where(mask_time.compute(), drop=True)\n swaths_gdf = gpd.read_file(\"swot_science_orbit_sept2015-v2_swath.shp\", crs=\"4326\")\n # print(f\"{len(res.ID_PASS)} matching passes: {res.ID_PASS.values}\")\n fig = plt.figure(figsize=(10, 6))\n ax = fig.add_subplot(1, 1, 1, projection=ccrs.PlateCarree())\n ax.gridlines(draw_labels=True)\n ax.add_feature(cartopy.feature.OCEAN, color='lightblue')\n ax.add_feature(cartopy.feature.COASTLINE)\n swaths_gdf[swaths_gdf[\"ID_PASS\"].isin(data_s.pass_num.values)].plot(ax=ax)\n return data_s\n\n\nstart = pd.Timestamp(\"2023-12-13\")\nend = pd.Timestamp(\"2023-12-14\")\ndata_s2 = subset_temporal(data, start, end)\n\n\n\n\n\n\n\n\n\ndata_s2\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset> Size: 11GB\nDimensions: (cycle_num: 1, pass_num: 28,\n num_lines: 9866, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) int64 8B 7\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 2MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 2MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n * pass_num (pass_num) int64 224B 550 551 ... 577\n start_time (cycle_num, pass_num) datetime64[ns] 224B ...\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 2MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n distance_to_coast (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n ... ...\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float64 4MB dask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n wind_speed_ssb_cor_source (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n contact: podaac@jpl.nasa.gov\n crid: PIC0\n cycle_number: 7\n ellipsoid_flattening: 0.0033528106647474805\n ellipsoid_semi_major_axis: 6378137.0\n ... ...\n xref_pole_location_file: SMM_PO1_AXXCNE20231125_020...\n xref_precipitation_files: SMM_CRR_AXFCNE20231123_065...\n xref_reforbittrack_files: SWOT_RefOrbitTrack125mPass...\n xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052...\n xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta...\n xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...xarray.DatasetDimensions:cycle_num: 1pass_num: 28num_lines: 9866num_pixels: 69num_sides: 2Coordinates: (7)cycle_num(cycle_num)int647array([7])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nint64\n\n\n550 551 552 553 ... 574 575 576 577\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,\n 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577])\n\n\n\n\nstart_time\n\n\n(cycle_num, pass_num)\n\n\ndatetime64[ns]\n\n\n2023-12-13T00:48:35.708763392 .....\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([['2023-12-13T00:48:35.708763392', '2023-12-13T01:40:05.708763392',\n '2023-12-13T02:31:25.708763392', '2023-12-13T03:22:55.708763392',\n '2023-12-13T04:14:25.708763392', '2023-12-13T05:05:45.708763392',\n '2023-12-13T05:57:15.708763392', '2023-12-13T06:48:45.708763392',\n '2023-12-13T07:40:05.708763392', '2023-12-13T08:31:35.708763392',\n '2023-12-13T09:23:05.708763392', '2023-12-13T10:14:25.708763392',\n '2023-12-13T11:05:55.708763392', '2023-12-13T11:57:25.708763392',\n '2023-12-13T12:48:45.708763392', '2023-12-13T13:40:15.708763392',\n '2023-12-13T14:31:45.708763392', '2023-12-13T15:23:05.708763392',\n '2023-12-13T16:14:35.708763392', '2023-12-13T17:06:05.708763392',\n '2023-12-13T17:57:35.708763392', '2023-12-13T18:48:55.708763392',\n '2023-12-13T19:40:25.708763392', '2023-12-13T20:31:55.708763392',\n '2023-12-13T21:23:15.708763392', '2023-12-13T22:14:45.708763392',\n '2023-12-13T23:06:15.708763392', '2023-12-13T23:57:35.708763392']],\n dtype='datetime64[ns]')\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n-21000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from crossover calibration\n\nquality_flag :\n\nheight_cor_xover_qual\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nt02 mean wave period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nunits :\n\ns\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[0, 4, 5, 6, 7, 8, 64]\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n64\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.05 MiB\n38.54 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nobject numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nquality_flag :\n\nssh_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nquality_flag :\n\nsig0_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nquality_flag :\n\nsig0_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_2_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427359\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862815\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_2_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809460191\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4212113375\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_2_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3876569055\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4279222239\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nquality_flag :\n\nswh_karin_qual\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\nflag_masks :\n\n[8, 16, 32, 128, 256, 512, 1024, 2048, 4096, 8192, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809361848\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nquality_flag :\n\norbit_qual\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nVolumetric correlation.\n\nlong_name :\n\nvolumetric correlation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n20000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427352\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862808\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\nIndexes: (2)cycle_numPandasIndexPandasIndex(Index([7], dtype='int64', name='cycle_num'))pass_numPandasIndexPandasIndex(Index([550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,\n 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577],\n dtype='int64', name='pass_num'))Attributes: (62)Conventions :CF-1.7contact :podaac@jpl.nasa.govcrid :PIC0cycle_number :7ellipsoid_flattening :0.0033528106647474805ellipsoid_semi_major_axis :6378137.0equator_longitude :0.17equator_time :2023-11-23T10:30:01.764000Zgeospatial_lat_max :78.27206799999999geospatial_lat_min :-78.271942geospatial_lon_max :83.89423599999998geospatial_lon_min :276.449703good_ocean_data_percent :62.825390889756235history :2023-11-25T21:21:19Z : Creationinstitution :CNESleft_first_latitude :-77.05370099999999left_first_longitude :276.469074left_last_latitude :78.27200599999999left_last_longitude :83.89423599999999pass_number :1pge_name :PGE_L2_LR_SSHpge_version :5.0.2platform :SWOTproduct_file_id :Expertproduct_version :01reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :V1.2.1right_first_latitude :-78.27186999999999right_first_longitude :276.449703right_last_latitude :77.053837right_last_longitude :83.87640999999999short_name :L2_LR_SSHsource :Ka-band radar interferometerssha_variance :0.0860590883812041time_coverage_end :2023-11-23T10:55:43.756871time_coverage_start :2023-11-23T10:04:15.708763title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavetransmit_antenna :minus_ywavelength :0.008385803020979021xref_dac_files :SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000xref_geco_database_version :v102xref_gim_files :JPLQ3270.23Ixref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.ncxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.ncxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_wind_files :SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_model_significant_wave_height_files :SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_pole_location_file :SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000xref_precipitation_files :SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grbxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_sea_ice_mask_files :SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_wave_model_files :SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb\n\n\n\n\ndata_s2.ssh_karin.hvplot.points(\n x=\"longitude\", y=\"latitude\",\n cmap=\"jet\", cnorm=\"eq_hist\", colorbar=True,\n coastline=True, geo=True, project=True, x_sampling=0.02, y_sampling=0.02,\n rasterize=True, aggregator=\"mean\", dynspread=True,\n frame_width=600, frame_height=650\n)", + "text": "Subset granules temporally\n\ndef subset_temporal(data, start, end):\n mask_time = (data.start_time >= start) & (data.start_time <= end)\n data_s = data.where(mask_time.compute(), drop=True)\n swaths_gdf = gpd.read_file(\"swot_science_orbit_sept2015-v2_swath.shp\", crs=\"4326\")\n # print(f\"{len(res.ID_PASS)} matching passes: {res.ID_PASS.values}\")\n fig = plt.figure(figsize=(10, 6))\n ax = fig.add_subplot(1, 1, 1, projection=ccrs.PlateCarree())\n ax.gridlines(draw_labels=True)\n ax.add_feature(cartopy.feature.OCEAN, color='lightblue')\n ax.add_feature(cartopy.feature.COASTLINE)\n swaths_gdf[swaths_gdf[\"ID_PASS\"].isin(data_s.pass_num.values)].plot(ax=ax)\n return data_s\n\n\nstart = pd.Timestamp(\"2023-12-13\")\nend = pd.Timestamp(\"2023-12-14\")\ndata_s2 = subset_temporal(data, start, end)\n\n\n\n\n\n\n\n\n\ndata_s2\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset> Size: 11GB\nDimensions: (cycle_num: 1, pass_num: 28,\n num_lines: 9866, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) int64 8B 7\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 2MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 2MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n * pass_num (pass_num) int64 224B 550 551 ... 577\n start_time (cycle_num, pass_num) datetime64[ns] 224B ...\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 2MB dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n distance_to_coast (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n ... ...\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float64 152MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float64 4MB dask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n wind_speed_ssb_cor_source (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 76MB dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n contact: podaac@jpl.nasa.gov\n crid: PIC0\n cycle_number: 7\n ellipsoid_flattening: 0.0033528106647474805\n ellipsoid_semi_major_axis: 6378137.0\n ... ...\n xref_pole_location_file: SMM_PO1_AXXCNE20231125_020...\n xref_precipitation_files: SMM_CRR_AXFCNE20231123_065...\n xref_reforbittrack_files: SWOT_RefOrbitTrack125mPass...\n xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052...\n xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta...\n xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...xarray.DatasetDimensions:cycle_num: 1pass_num: 28num_lines: 9866num_pixels: 69num_sides: 2Coordinates: (7)cycle_num(cycle_num)int647array([7])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 4 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nint64\n\n\n550 551 552 553 ... 574 575 576 577\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,\n 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577])\n\n\n\n\nstart_time\n\n\n(cycle_num, pass_num)\n\n\ndatetime64[ns]\n\n\n2023-12-13T00:48:35.708763392 .....\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([['2023-12-13T00:48:35.708763392', '2023-12-13T01:40:05.708763392',\n '2023-12-13T02:31:25.708763392', '2023-12-13T03:22:55.708763392',\n '2023-12-13T04:14:25.708763392', '2023-12-13T05:05:45.708763392',\n '2023-12-13T05:57:15.708763392', '2023-12-13T06:48:45.708763392',\n '2023-12-13T07:40:05.708763392', '2023-12-13T08:31:35.708763392',\n '2023-12-13T09:23:05.708763392', '2023-12-13T10:14:25.708763392',\n '2023-12-13T11:05:55.708763392', '2023-12-13T11:57:25.708763392',\n '2023-12-13T12:48:45.708763392', '2023-12-13T13:40:15.708763392',\n '2023-12-13T14:31:45.708763392', '2023-12-13T15:23:05.708763392',\n '2023-12-13T16:14:35.708763392', '2023-12-13T17:06:05.708763392',\n '2023-12-13T17:57:35.708763392', '2023-12-13T18:48:55.708763392',\n '2023-12-13T19:40:25.708763392', '2023-12-13T20:31:55.708763392',\n '2023-12-13T21:23:15.708763392', '2023-12-13T22:14:45.708763392',\n '2023-12-13T23:06:15.708763392', '2023-12-13T23:57:35.708763392']],\n dtype='datetime64[ns]')\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n-21000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from crossover calibration\n\nquality_flag :\n\nheight_cor_xover_qual\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nt02 mean wave period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nunits :\n\ns\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[0, 4, 5, 6, 7, 8, 64]\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n64\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.05 MiB\n38.54 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nobject numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nquality_flag :\n\nssh_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nquality_flag :\n\nsig0_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nquality_flag :\n\nsig0_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_2_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427359\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862815\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_2_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809460191\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4212113375\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_2_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3876569055\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4279222239\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nquality_flag :\n\nswh_karin_qual\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\nflag_masks :\n\n[8, 16, 32, 128, 256, 512, 1024, 2048, 4096, 8192, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809361848\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nquality_flag :\n\norbit_qual\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.11 MiB\n77.08 kiB\n\n\nShape\n(1, 28, 9866)\n(1, 1, 9866)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9866 28 1\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nVolumetric correlation.\n\nlong_name :\n\nvolumetric correlation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n20000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427352\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862808\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n145.42 MiB\n5.19 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.22 MiB\n154.16 kiB\n\n\nShape\n(1, 28, 9866, 2)\n(1, 1, 9866, 2)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1 1 2 9866 28\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n72.71 MiB\n2.60 MiB\n\n\nShape\n(1, 28, 9866, 69)\n(1, 1, 9866, 69)\n\n\nDask graph\n28 chunks in 7 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1 1 69 9866 28\n\n\n\n\n\n\nIndexes: (2)cycle_numPandasIndexPandasIndex(Index([7], dtype='int64', name='cycle_num'))pass_numPandasIndexPandasIndex(Index([550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,\n 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577],\n dtype='int64', name='pass_num'))Attributes: (62)Conventions :CF-1.7contact :podaac@jpl.nasa.govcrid :PIC0cycle_number :7ellipsoid_flattening :0.0033528106647474805ellipsoid_semi_major_axis :6378137.0equator_longitude :0.17equator_time :2023-11-23T10:30:01.764000Zgeospatial_lat_max :78.27206799999999geospatial_lat_min :-78.271942geospatial_lon_max :83.89423599999998geospatial_lon_min :276.449703good_ocean_data_percent :62.825390889756235history :2023-11-25T21:21:19Z : Creationinstitution :CNESleft_first_latitude :-77.05370099999999left_first_longitude :276.469074left_last_latitude :78.27200599999999left_last_longitude :83.89423599999999pass_number :1pge_name :PGE_L2_LR_SSHpge_version :5.0.2platform :SWOTproduct_file_id :Expertproduct_version :01reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :V1.2.1right_first_latitude :-78.27186999999999right_first_longitude :276.449703right_last_latitude :77.053837right_last_longitude :83.87640999999999short_name :L2_LR_SSHsource :Ka-band radar interferometerssha_variance :0.0860590883812041time_coverage_end :2023-11-23T10:55:43.756871time_coverage_start :2023-11-23T10:04:15.708763title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavetransmit_antenna :minus_ywavelength :0.008385803020979021xref_dac_files :SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000xref_geco_database_version :v102xref_gim_files :JPLQ3270.23Ixref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.ncxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.ncxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_wind_files :SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_model_significant_wave_height_files :SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_pole_location_file :SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000xref_precipitation_files :SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grbxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_sea_ice_mask_files :SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_wave_model_files :SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb\n\n\n\ndata_s2.ssh_karin.hvplot.points(\n x=\"longitude\", y=\"latitude\",\n cmap=\"jet\", cnorm=\"eq_hist\", colorbar=True,\n coastline=True, geo=True, project=True, x_sampling=0.02, y_sampling=0.02,\n rasterize=True, aggregator=\"mean\", dynspread=True,\n frame_width=600, frame_height=650\n)", "crumbs": [ "Advanced Cloud", "Dask, Kerchunk, & Zarr" @@ -305,7 +305,7 @@ "href": "external/SWOT_SSH_dashboard.html#using-.coarsen", "title": "Integrating Dask, Kerchunk, Zarr and Xarray", "section": "Using .coarsen()", - "text": "Using .coarsen()\n\nXarray has built in functionality to coarsen the data and lower resolution\n\n\n%%time\ndata_s3 = data.coarsen({'num_pixels': 3, 'num_lines': 4}, boundary='trim').mean()\ndata_s3\n\nCPU times: user 8.26 s, sys: 487 ms, total: 8.75 s\nWall time: 10.4 s\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset> Size: 157GB\nDimensions: (cycle_num: 8, pass_num: 584,\n num_lines: 2466, num_pixels: 23,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) int64 64B 7 8 9 ... 13 14\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 92MB dask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 92MB dask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n * pass_num (pass_num) int64 5kB 1 2 ... 583 584\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 92MB dask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n distance_to_coast (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n ... ...\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float64 184MB dask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n wind_speed_ssb_cor_source (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n contact: podaac@jpl.nasa.gov\n crid: PIC0\n cycle_number: 7\n ellipsoid_flattening: 0.0033528106647474805\n ellipsoid_semi_major_axis: 6378137.0\n ... ...\n xref_pole_location_file: SMM_PO1_AXXCNE20231125_020...\n xref_precipitation_files: SMM_CRR_AXFCNE20231123_065...\n xref_reforbittrack_files: SWOT_RefOrbitTrack125mPass...\n xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052...\n xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta...\n xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...xarray.DatasetDimensions:cycle_num: 8pass_num: 584num_lines: 2466num_pixels: 23num_sides: 2Coordinates: (6)cycle_num(cycle_num)int647 8 9 10 11 12 13 14array([ 7, 8, 9, 10, 11, 12, 13, 14])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nint64\n\n\n1 2 3 4 5 6 ... 580 581 582 583 584\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([ 1, 2, 3, ..., 582, 583, 584])\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n-21000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from crossover calibration\n\nquality_flag :\n\nheight_cor_xover_qual\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nt02 mean wave period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nunits :\n\ns\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[0, 4, 5, 6, 7, 8, 64]\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n64\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n43.95 MiB\n9.63 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 16 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nquality_flag :\n\nssh_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nquality_flag :\n\nsig0_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nquality_flag :\n\nsig0_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_2_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427359\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862815\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_2_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809460191\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4212113375\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_2_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3876569055\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4279222239\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nquality_flag :\n\nswh_karin_qual\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\nflag_masks :\n\n[8, 16, 32, 128, 256, 512, 1024, 2048, 4096, 8192, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809361848\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 27 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 27 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nquality_flag :\n\norbit_qual\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nVolumetric correlation.\n\nlong_name :\n\nvolumetric correlation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n20000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427352\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862808\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\nIndexes: (2)cycle_numPandasIndexPandasIndex(Index([7, 8, 9, 10, 11, 12, 13, 14], dtype='int64', name='cycle_num'))pass_numPandasIndexPandasIndex(Index([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,\n ...\n 575, 576, 577, 578, 579, 580, 581, 582, 583, 584],\n dtype='int64', name='pass_num', length=584))Attributes: (62)Conventions :CF-1.7contact :podaac@jpl.nasa.govcrid :PIC0cycle_number :7ellipsoid_flattening :0.0033528106647474805ellipsoid_semi_major_axis :6378137.0equator_longitude :0.17equator_time :2023-11-23T10:30:01.764000Zgeospatial_lat_max :78.27206799999999geospatial_lat_min :-78.271942geospatial_lon_max :83.89423599999998geospatial_lon_min :276.449703good_ocean_data_percent :62.825390889756235history :2023-11-25T21:21:19Z : Creationinstitution :CNESleft_first_latitude :-77.05370099999999left_first_longitude :276.469074left_last_latitude :78.27200599999999left_last_longitude :83.89423599999999pass_number :1pge_name :PGE_L2_LR_SSHpge_version :5.0.2platform :SWOTproduct_file_id :Expertproduct_version :01reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :V1.2.1right_first_latitude :-78.27186999999999right_first_longitude :276.449703right_last_latitude :77.053837right_last_longitude :83.87640999999999short_name :L2_LR_SSHsource :Ka-band radar interferometerssha_variance :0.0860590883812041time_coverage_end :2023-11-23T10:55:43.756871time_coverage_start :2023-11-23T10:04:15.708763title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavetransmit_antenna :minus_ywavelength :0.008385803020979021xref_dac_files :SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000xref_geco_database_version :v102xref_gim_files :JPLQ3270.23Ixref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.ncxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.ncxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_wind_files :SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_model_significant_wave_height_files :SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_pole_location_file :SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000xref_precipitation_files :SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grbxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_sea_ice_mask_files :SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_wave_model_files :SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb", + "text": "Using .coarsen()\n\nXarray has built in functionality to coarsen the data and lower resolution\n\n\n%%time\ndata_s3 = data.coarsen({'num_pixels': 3, 'num_lines': 4}, boundary='trim').mean()\ndata_s3\n\nCPU times: user 8.26 s, sys: 487 ms, total: 8.75 s\nWall time: 10.4 s\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset> Size: 157GB\nDimensions: (cycle_num: 8, pass_num: 584,\n num_lines: 2466, num_pixels: 23,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) int64 64B 7 8 9 ... 13 14\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 92MB dask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 92MB dask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n * pass_num (pass_num) int64 5kB 1 2 ... 583 584\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 92MB dask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n distance_to_coast (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n ... ...\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float64 2GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float64 184MB dask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n wind_speed_ssb_cor_source (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 1GB dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n contact: podaac@jpl.nasa.gov\n crid: PIC0\n cycle_number: 7\n ellipsoid_flattening: 0.0033528106647474805\n ellipsoid_semi_major_axis: 6378137.0\n ... ...\n xref_pole_location_file: SMM_PO1_AXXCNE20231125_020...\n xref_precipitation_files: SMM_CRR_AXFCNE20231123_065...\n xref_reforbittrack_files: SWOT_RefOrbitTrack125mPass...\n xref_sea_ice_mask_files: SMM_ICS_AXFCNE20231124_052...\n xref_statickarincal_files: SWOT_StaticKaRInCalAdjusta...\n xref_wave_model_files: SMM_WMA_AXPCNE20231124_072...xarray.DatasetDimensions:cycle_num: 8pass_num: 584num_lines: 2466num_pixels: 23num_sides: 2Coordinates: (6)cycle_num(cycle_num)int647 8 9 10 11 12 13 14array([ 7, 8, 9, 10, 11, 12, 13, 14])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nint64\n\n\n1 2 3 4 5 6 ... 580 581 582 583 584\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([ 1, 2, 3, ..., 582, 583, 584])\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n-21000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from crossover calibration\n\nquality_flag :\n\nheight_cor_xover_qual\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nt02 mean wave period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nunits :\n\ns\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nquality_flag :\n\nssh_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[0, 4, 5, 6, 7, 8, 64]\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n64\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n43.95 MiB\n9.63 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 16 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nquality_flag :\n\nssh_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0, 1, 2, 3]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nquality_flag :\n\norbit_qual\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nquality_flag :\n\nsig0_karin_2_qual\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nquality_flag :\n\nsig0_karin_qual\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nquality_flag :\n\nsig0_karin_2_qual\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427359\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862815\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nquality_flag :\n\nssh_karin_2_qual\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809460191\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4212113375\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nquality_flag :\n\nssha_karin_2_qual\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3876569055\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\nflag_masks :\n\n[1, 2, 4, 8, 16, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 32768, 65536, 131072, 262144, 524288, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4279222239\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nquality_flag :\n\nswh_karin_qual\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\nflag_masks :\n\n[8, 16, 32, 128, 256, 512, 1024, 2048, 4096, 8192, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809361848\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 27 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 27 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nquality_flag :\n\norbit_qual\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n87.90 MiB\n19.27 kiB\n\n\nShape\n(8, 584, 2466)\n(1, 1, 2466)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2466 584 8\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nVolumetric correlation.\n\nlong_name :\n\nvolumetric correlation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n20000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nquality_flag :\n\nssh_karin_2_qual\n\nunits :\n\n1\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n3809427352\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\nflag_masks :\n\n[8, 16, 128, 256, 512, 1024, 2048, 4096, 8192, 65536, 131072, 262144, 524288, 16777216, 33554432, 268435456, 536870912, 1073741824, 2147483648]\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n4077862808\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.97 GiB\n443.11 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 2466, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n175.80 MiB\n38.53 kiB\n\n\nShape\n(8, 584, 2466, 2)\n(1, 1, 2466, 2)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 8 1 2 2466 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\nflag_masks :\n\n[1, 2, 4]\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n7\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 2466, 23), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.99 GiB\n221.55 kiB\n\n\nShape\n(8, 584, 2466, 23)\n(1, 1, 2466, 23)\n\n\nDask graph\n4672 chunks in 6 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 8 1 23 2466 584\n\n\n\n\n\n\nIndexes: (2)cycle_numPandasIndexPandasIndex(Index([7, 8, 9, 10, 11, 12, 13, 14], dtype='int64', name='cycle_num'))pass_numPandasIndexPandasIndex(Index([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,\n ...\n 575, 576, 577, 578, 579, 580, 581, 582, 583, 584],\n dtype='int64', name='pass_num', length=584))Attributes: (62)Conventions :CF-1.7contact :podaac@jpl.nasa.govcrid :PIC0cycle_number :7ellipsoid_flattening :0.0033528106647474805ellipsoid_semi_major_axis :6378137.0equator_longitude :0.17equator_time :2023-11-23T10:30:01.764000Zgeospatial_lat_max :78.27206799999999geospatial_lat_min :-78.271942geospatial_lon_max :83.89423599999998geospatial_lon_min :276.449703good_ocean_data_percent :62.825390889756235history :2023-11-25T21:21:19Z : Creationinstitution :CNESleft_first_latitude :-77.05370099999999left_first_longitude :276.469074left_last_latitude :78.27200599999999left_last_longitude :83.89423599999999pass_number :1pge_name :PGE_L2_LR_SSHpge_version :5.0.2platform :SWOTproduct_file_id :Expertproduct_version :01reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :V1.2.1right_first_latitude :-78.27186999999999right_first_longitude :276.449703right_last_latitude :77.053837right_last_longitude :83.87640999999999short_name :L2_LR_SSHsource :Ka-band radar interferometerssha_variance :0.0860590883812041time_coverage_end :2023-11-23T10:55:43.756871time_coverage_start :2023-11-23T10:04:15.708763title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavetransmit_antenna :minus_ywavelength :0.008385803020979021xref_dac_files :SMM_MOG_AXPCNE20231123_203002_20231123_060000_20231123_060000, SMM_MOG_AXPCNE20231123_203002_20231123_120000_20231123_120000xref_geco_database_version :v102xref_gim_files :JPLQ3270.23Ixref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20231122T234644_20231123T234736_PIC0_02.ncxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_007_001_20231123T100412_20231123T105546_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP006_584_20231123_091249_20231123_100416.nc, SWOT_IPN_2PfP007_001_20231123_100416_20231123_105543.nc, SWOT_IPN_2PfP007_002_20231123_105543_20231123_114709.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP006_584_20231123_091245_20231123_100420_PIC0_01.nc, SWOT_IPRAD_2PaP007_001_20231123_100412_20231123_105546_PIC0_01.nc, SWOT_IPRAD_2PaP007_002_20231123_105539_20231123_114713_PIC0_01.ncxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CLW_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_PMA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20231123_174041_20231123_060000_20231123_060000, SMM_PSA_AXVCNE20231123_174041_20231123_120000_20231123_120000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_T2M_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_CWV_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_WEA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_meteorological_wind_files :SMM_VWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_UWA_AXVCNE20231123_150925_20231123_060000_20231123_060000, SMM_VWA_AXVCNE20231123_171327_20231123_120000_20231123_120000, SMM_UWA_AXVCNE20231123_171327_20231123_120000_20231123_120000xref_model_significant_wave_height_files :SMM_SWH_AXPCNE20231123_174041_20231123_060000_20231123_060000.grb, SMM_SWH_AXPCNE20231123_174041_20231123_120000_20231123_120000.grbxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20231124_105318_20231122_225923_20231124_005923.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_pole_location_file :SMM_PO1_AXXCNE20231125_020000_19900101_000000_20240523_000000xref_precipitation_files :SMM_CRR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_065540_20231123_060000_20231123_060000.grb, SMM_LSR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grb, SMM_CRR_AXFCNE20231123_185541_20231123_120000_20231123_120000.grbxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_sea_ice_mask_files :SMM_ICS_AXFCNE20231124_052007_20231123_000000_20231123_235959.nc, SMM_ICN_AXFCNE20231124_051512_20231123_000000_20231123_235959.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_wave_model_files :SMM_WMA_AXPCNE20231124_072014_20231123_030000_20231124_000000.grb", "crumbs": [ "Advanced Cloud", "Dask, Kerchunk, & Zarr" @@ -458,7 +458,7 @@ "href": "external/cof-zarr-reformat.html", "title": "COF Zarr Access via Reformat", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, ECCO.", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, ECCO.", "crumbs": [ "Tutorials", "Cloud Optimized Examples", @@ -510,7 +510,7 @@ "href": "external/zarr_access.html", "title": "Zarr Access for NetCDF4 files", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from NASA Openscapes 2021 Cloud Hackathon Repository", + "text": "imported on: 2024-06-03\nThis notebook is from NASA Openscapes 2021 Cloud Hackathon Repository", "crumbs": [ "Tutorials", "Cloud Optimized Examples", @@ -546,7 +546,7 @@ "href": "external/zarr_access.html#exercise", "title": "Zarr Access for NetCDF4 files", "section": "Exercise", - "text": "Exercise\nIn this exercise, we will be using the eosdis-zarr-store library to aggregate and analyze a month of sea surface temperature for the Great Lakes region\n\nSet up\n\nImport Required Packages\n\n# Core libraries for this tutorial\n# Available via `pip install zarr zarr-eosdis-store`\nfrom eosdis_store import EosdisStore\nimport xarray as xr\n\n# Other Python libraries\nimport requests\nfrom pqdm.threads import pqdm\nfrom matplotlib import animation, pyplot as plt\nfrom IPython.core.display import display, HTML\n\n# Python standard library imports\nfrom pprint import pprint\n\nAlso set the width / height for plots we show\n\nplt.rcParams['figure.figsize'] = 12, 6\n\n\n\nSet Dataset, Time, and Region of Interest\nLook in PO.DAAC’s cloud archive for Group for High Resolution Sea Surface Temperature (GHRSST) Level 4 Multiscale Ultrahigh Resolution (MUR) data\n\ndata_provider = 'POCLOUD'\nmur_short_name = 'MUR-JPL-L4-GLOB-v4.1'\n\nLooking for data from the month of September over the Great Lakes\n\nstart_time = '2021-09-01T21:00:00Z'\nend_time = '2021-09-30T20:59:59Z'\n\n# Bounding box around the Great Lakes\nlats = slice(41, 49)\nlons = slice(-93, -76)\n\n# Some other possibly interesting bounding boxes:\n\n# Hawaiian Islands\n# lats = slice(18, 22.5)\n# lons = slice(-161, -154)\n\n# Mediterranean Sea\n# lats = slice(29, 45)\n# lons = slice(-7, 37)\n\n\n\n\nFind URLs for the dataset and AOI\nSet up a CMR granules search for our area of interest, as we saw in prior tutorials\n\ncmr_url = 'https://cmr.earthdata.nasa.gov/search/granules.json'\n\nSearch for granules in our area of interest, expecting one granule per day of September\n\nresponse = requests.get(cmr_url, \n params={\n 'provider': data_provider,\n 'short_name': mur_short_name, \n 'temporal': f'{start_time},{end_time}',\n 'bounding_box': f'{lons.start},{lats.start},{lons.stop},{lats.stop}',\n 'page_size': 2000,\n }\n )\n\n\ngranules = response.json()['feed']['entry']\n\nfor granule in granules:\n print(granule['title'])\n\n20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210902090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210903090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210904090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210905090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210906090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210907090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210908090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210909090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210910090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210911090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210912090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210913090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210914090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210915090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210916090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210917090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210918090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210919090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210920090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210921090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210922090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210923090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210924090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210925090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210926090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210927090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210928090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210929090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210930090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n\n\n\npprint(granules[0])\n\n{'boxes': ['-90 -180 90 180'],\n 'browse_flag': False,\n 'collection_concept_id': 'C1996881146-POCLOUD',\n 'coordinate_system': 'CARTESIAN',\n 'data_center': 'POCLOUD',\n 'dataset_id': 'GHRSST Level 4 MUR Global Foundation Sea Surface Temperature '\n 'Analysis (v4.1)',\n 'day_night_flag': 'UNSPECIFIED',\n 'granule_size': '9.059906005859375E-5',\n 'id': 'G2113241213-POCLOUD',\n 'links': [{'href': 's3://podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/s3#',\n 'title': 'This link provides direct download access via S3 to the '\n 'granule.'},\n {'href': 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',\n 'title': 'Download '\n '20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc'},\n {'href': 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-public/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc.md5',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',\n 'title': 'Download '\n '20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc.md5'},\n {'href': 'https://archive.podaac.earthdata.nasa.gov/s3credentials',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',\n 'title': 'api endpoint to retrieve temporary credentials valid for '\n 'same-region direct s3 access'},\n {'href': 'https://opendap.earthdata.nasa.gov/collections/C1996881146-POCLOUD/granules/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/service#',\n 'title': 'OPeNDAP request URL'},\n {'href': 'https://github.com/nasa/podaac_tools_and_services/tree/master/subset_opendap',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://ghrsst.jpl.nasa.gov',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://earthdata.nasa.gov/esds/competitive-programs/measures/mur-sst',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#'},\n {'href': 'http://journals.ametsoc.org/doi/abs/10.1175/1520-0426%281998%29015%3C0741:BSHWSS%3E2.0.CO;2',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://podaac-tools.jpl.nasa.gov/drive/files/OceanTemperature/ghrsst/docs/GDS20r5.pdf',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://github.com/podaac/data-readers',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://doi.org/10.1016/j.rse.2017.07.029',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://registry.opendata.aws/mur/#usageexa',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#'},\n {'href': 'http://www.ghrsst.org',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://podaac.jpl.nasa.gov/CitingPODAAC',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://cmr.earthdata.nasa.gov/virtual-directory/collections/C1996881146-POCLOUD ',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'length': '300.0MB',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},\n {'href': ' '\n 'https://search.earthdata.nasa.gov/search/granules?p=C1996881146-POCLOUD ',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'length': '700.0MB',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},\n {'href': 'https://podaac.jpl.nasa.gov/MEaSUREs-MUR',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://github.com/podaac/tutorials/blob/master/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.ipynb',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'}],\n 'online_access_flag': True,\n 'original_format': 'UMM_JSON',\n 'time_end': '2021-09-01T21:00:00.000Z',\n 'time_start': '2021-08-31T21:00:00.000Z',\n 'title': '20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'updated': '2021-09-10T07:29:40.511Z'}\n\n\n\nurls = []\nfor granule in granules:\n for link in granule['links']:\n if link['rel'].endswith('/data#'):\n urls.append(link['href'])\n break\npprint(urls)\n\n['https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210902090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210903090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210904090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210905090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210906090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210907090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210908090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210909090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210910090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210911090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210912090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210913090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210914090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210915090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210916090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210917090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210918090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210919090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210920090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210921090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210922090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210923090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210924090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210925090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210926090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210927090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210928090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210929090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210930090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc']\n\n\n\n\nOpen and view our AOI without downloading a whole file\n\nCheck to see if we can use an efficient partial-access technique\n\nresponse = requests.head(f'{urls[0]}.dmrpp')\n\nprint('Can we use EosdisZarrStore and XArray to access these files more efficiently?')\nprint('Yes' if response.ok else 'No')\n\nCan we use EosdisZarrStore and XArray to access these files more efficiently?\nYes\n\n\nOpen our first URL using the Zarr library\n\nurl = urls[0]\n\nds = xr.open_zarr(EosdisStore(url), consolidated=False)\n\nThat’s it! No downloads, temporary credentials, or S3 filesystems. Hereafter, we interact with the ds variable as with any XArray dataset. We need not worry about the EosdisStore anymore.\nView the file’s variable structure\n\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 1, lat: 17999, lon: 36000)\nCoordinates:\n * lat (lat) float32 -89.99 -89.98 -89.97 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\n * time (time) datetime64[ns] 2021-09-01T09:00:00\nData variables:\n analysed_sst (time, lat, lon) float32 dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n analysis_error (time, lat, lon) float32 dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n dt_1km_data (time, lat, lon) timedelta64[ns] dask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n mask (time, lat, lon) float32 dask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n sea_ice_fraction (time, lat, lon) float32 dask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n sst_anomaly (time, lat, lon) float32 dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\nAttributes: (12/47)\n Conventions: CF-1.7\n title: Daily MUR SST, Final product\n summary: A merged, multi-sensor L4 Foundation SST anal...\n references: http://podaac.jpl.nasa.gov/Multi-scale_Ultra-...\n institution: Jet Propulsion Laboratory\n history: created at nominal 4-day latency; replaced nr...\n ... ...\n project: NASA Making Earth Science Data Records for Us...\n publisher_name: GHRSST Project Office\n publisher_url: http://www.ghrsst.org\n publisher_email: ghrsst-po@nceo.ac.uk\n processing_level: L4\n cdm_data_type: gridxarray.DatasetDimensions:time: 1lat: 17999lon: 36000Coordinates: (3)lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :geolocations inherited from the input data without correctionarray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :geolocations inherited from the input data without correctionarray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)time(time)datetime64[ns]2021-09-01T09:00:00long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2021-09-01T09:00:00.000000000'], dtype='datetime64[ns]')Data variables: (6)analysed_sst(time, lat, lon)float32dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\\\"Final\\\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n7.99 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1023, 2047)\n\n\nCount\n325 Tasks\n324 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nanalysis_error\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated error standard deviation of analysed_sst\n\nunits :\n\nkelvin\n\nvalid_min :\n\n0\n\nvalid_max :\n\n32767\n\ncomment :\n\nuncertainty in \\\"analysed_sst\\\"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n7.99 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1023, 2047)\n\n\nCount\n325 Tasks\n324 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\ndt_1km_data\n\n\n(time, lat, lon)\n\n\ntimedelta64[ns]\n\n\ndask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime to most recent 1km data\n\nvalid_min :\n\n-127\n\nvalid_max :\n\n127\n\nsource :\n\nMODIS and VIIRS pixels ingested by MUR\n\ncomment :\n\nThe grid value is hours between the analysis time and the most recent MODIS or VIIRS 1km L2P datum within 0.01 degrees from the grid point. \\\"Fill value\\\" indicates absence of such 1km data at the grid point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.83 GiB\n31.96 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1447, 2895)\n\n\nCount\n170 Tasks\n169 Chunks\n\n\nType\ntimedelta64[ns]\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nmask\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea/land field composite mask\n\nvalid_min :\n\n1\n\nvalid_max :\n\n31\n\nflag_masks :\n\n[1, 2, 4, 8, 16]\n\nflag_meanings :\n\nopen_sea land open_lake open_sea_with_ice_in_the_grid open_lake_with_ice_in_the_grid\n\ncomment :\n\nmask can be used to further filter the data.\n\nsource :\n\nGMT \\\"grdlandmask\\\", ice flag from sea_ice_fraction data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n15.98 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1447, 2895)\n\n\nCount\n170 Tasks\n169 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nsea_ice_fraction\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea ice area fraction\n\nstandard_name :\n\nsea_ice_area_fraction\n\nvalid_min :\n\n0\n\nvalid_max :\n\n100\n\nsource :\n\nEUMETSAT OSI-SAF, copyright EUMETSAT\n\ncomment :\n\nice fraction is a dimensionless quantity between 0 and 1; it has been interpolated by a nearest neighbor approach.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n15.98 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1447, 2895)\n\n\nCount\n170 Tasks\n169 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nsst_anomaly\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nSST anomaly from a seasonal SST climatology based on the MUR data over 2003-2014 period\n\nunits :\n\nkelvin\n\nvalid_min :\n\n-32767\n\nvalid_max :\n\n32767\n\ncomment :\n\nanomaly reference to the day-of-year average between 2003 and 2014\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n7.99 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1023, 2047)\n\n\nCount\n325 Tasks\n324 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\nAttributes: (47)Conventions :CF-1.7title :Daily MUR SST, Final productsummary :A merged, multi-sensor L4 Foundation SST analysis product from JPL.references :http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SSTinstitution :Jet Propulsion Laboratoryhistory :created at nominal 4-day latency; replaced nrt (1-day latency) version.comment :MUR = \\\"Multi-scale Ultra-high Resolution\\\"license :These data are available free of charge under data policy of JPL PO.DAAC.id :MUR-JPL-L4-GLOB-v04.1naming_authority :org.ghrsstproduct_version :04.1uuid :27665bc0-d5fc-11e1-9b23-0800200c9a66gds_version_id :2.0netcdf_version_id :4.1date_created :20210910T072132Zstart_time :20210901T090000Zstop_time :20210901T090000Ztime_coverage_start :20210831T210000Ztime_coverage_end :20210901T210000Zfile_quality_level :3source :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAFplatform :Terra, Aqua, GCOM-W, MetOp-A, MetOp-B, Buoys/Shipssensor :MODIS, AMSR2, AVHRR, in-situMetadata_Conventions :Unidata Observation Dataset v1.0metadata_link :http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1keywords :Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsouthernmost_latitude :-90.0northernmost_latitude :90.0westernmost_longitude :-180.0easternmost_longitude :180.0spatial_resolution :0.01 degreesgeospatial_lat_units :degrees northgeospatial_lat_resolution :0.009999999776geospatial_lon_units :degrees eastgeospatial_lon_resolution :0.009999999776acknowledgment :Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.creator_name :JPL MUR SST projectcreator_email :ghrsst@podaac.jpl.nasa.govcreator_url :http://mur.jpl.nasa.govproject :NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Programpublisher_name :GHRSST Project Officepublisher_url :http://www.ghrsst.orgpublisher_email :ghrsst-po@nceo.ac.ukprocessing_level :L4cdm_data_type :grid", + "text": "Exercise\nIn this exercise, we will be using the eosdis-zarr-store library to aggregate and analyze a month of sea surface temperature for the Great Lakes region\n\nSet up\n\nImport Required Packages\n\n# Core libraries for this tutorial\n# Available via `pip install zarr zarr-eosdis-store`\nfrom eosdis_store import EosdisStore\nimport xarray as xr\n\n# Other Python libraries\nimport requests\nfrom pqdm.threads import pqdm\nfrom matplotlib import animation, pyplot as plt\nfrom IPython.core.display import display, HTML\n\n# Python standard library imports\nfrom pprint import pprint\n\nAlso set the width / height for plots we show\n\nplt.rcParams['figure.figsize'] = 12, 6\n\n\n\nSet Dataset, Time, and Region of Interest\nLook in PO.DAAC’s cloud archive for Group for High Resolution Sea Surface Temperature (GHRSST) Level 4 Multiscale Ultrahigh Resolution (MUR) data\n\ndata_provider = 'POCLOUD'\nmur_short_name = 'MUR-JPL-L4-GLOB-v4.1'\n\nLooking for data from the month of September over the Great Lakes\n\nstart_time = '2021-09-01T21:00:00Z'\nend_time = '2021-09-30T20:59:59Z'\n\n# Bounding box around the Great Lakes\nlats = slice(41, 49)\nlons = slice(-93, -76)\n\n# Some other possibly interesting bounding boxes:\n\n# Hawaiian Islands\n# lats = slice(18, 22.5)\n# lons = slice(-161, -154)\n\n# Mediterranean Sea\n# lats = slice(29, 45)\n# lons = slice(-7, 37)\n\n\n\n\nFind URLs for the dataset and AOI\nSet up a CMR granules search for our area of interest, as we saw in prior tutorials\n\ncmr_url = 'https://cmr.earthdata.nasa.gov/search/granules.json'\n\nSearch for granules in our area of interest, expecting one granule per day of September\n\nresponse = requests.get(cmr_url, \n params={\n 'provider': data_provider,\n 'short_name': mur_short_name, \n 'temporal': f'{start_time},{end_time}',\n 'bounding_box': f'{lons.start},{lats.start},{lons.stop},{lats.stop}',\n 'page_size': 2000,\n }\n )\n\n\ngranules = response.json()['feed']['entry']\n\nfor granule in granules:\n print(granule['title'])\n\n20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210902090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210903090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210904090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210905090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210906090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210907090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210908090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210909090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210910090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210911090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210912090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210913090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210914090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210915090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210916090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210917090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210918090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210919090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210920090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210921090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210922090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210923090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210924090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210925090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210926090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210927090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210928090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210929090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n20210930090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n\n\n\npprint(granules[0])\n\n{'boxes': ['-90 -180 90 180'],\n 'browse_flag': False,\n 'collection_concept_id': 'C1996881146-POCLOUD',\n 'coordinate_system': 'CARTESIAN',\n 'data_center': 'POCLOUD',\n 'dataset_id': 'GHRSST Level 4 MUR Global Foundation Sea Surface Temperature '\n 'Analysis (v4.1)',\n 'day_night_flag': 'UNSPECIFIED',\n 'granule_size': '9.059906005859375E-5',\n 'id': 'G2113241213-POCLOUD',\n 'links': [{'href': 's3://podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/s3#',\n 'title': 'This link provides direct download access via S3 to the '\n 'granule.'},\n {'href': 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#',\n 'title': 'Download '\n '20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc'},\n {'href': 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-public/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc.md5',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',\n 'title': 'Download '\n '20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc.md5'},\n {'href': 'https://archive.podaac.earthdata.nasa.gov/s3credentials',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#',\n 'title': 'api endpoint to retrieve temporary credentials valid for '\n 'same-region direct s3 access'},\n {'href': 'https://opendap.earthdata.nasa.gov/collections/C1996881146-POCLOUD/granules/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'hreflang': 'en-US',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/service#',\n 'title': 'OPeNDAP request URL'},\n {'href': 'https://github.com/nasa/podaac_tools_and_services/tree/master/subset_opendap',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://ghrsst.jpl.nasa.gov',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://earthdata.nasa.gov/esds/competitive-programs/measures/mur-sst',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#'},\n {'href': 'http://journals.ametsoc.org/doi/abs/10.1175/1520-0426%281998%29015%3C0741:BSHWSS%3E2.0.CO;2',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://podaac-tools.jpl.nasa.gov/drive/files/OceanTemperature/ghrsst/docs/GDS20r5.pdf',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://github.com/podaac/data-readers',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://doi.org/10.1016/j.rse.2017.07.029',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://registry.opendata.aws/mur/#usageexa',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/metadata#'},\n {'href': 'http://www.ghrsst.org',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://podaac.jpl.nasa.gov/CitingPODAAC',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://cmr.earthdata.nasa.gov/virtual-directory/collections/C1996881146-POCLOUD ',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'length': '300.0MB',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},\n {'href': ' '\n 'https://search.earthdata.nasa.gov/search/granules?p=C1996881146-POCLOUD ',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'length': '700.0MB',\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/data#'},\n {'href': 'https://podaac.jpl.nasa.gov/MEaSUREs-MUR',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'},\n {'href': 'https://github.com/podaac/tutorials/blob/master/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.ipynb',\n 'hreflang': 'en-US',\n 'inherited': True,\n 'rel': 'http://esipfed.org/ns/fedsearch/1.1/documentation#'}],\n 'online_access_flag': True,\n 'original_format': 'UMM_JSON',\n 'time_end': '2021-09-01T21:00:00.000Z',\n 'time_start': '2021-08-31T21:00:00.000Z',\n 'title': '20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'updated': '2021-09-10T07:29:40.511Z'}\n\n\n\nurls = []\nfor granule in granules:\n for link in granule['links']:\n if link['rel'].endswith('/data#'):\n urls.append(link['href'])\n break\npprint(urls)\n\n['https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210901090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210902090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210903090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210904090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210905090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210906090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210907090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210908090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210909090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210910090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210911090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210912090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210913090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210914090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210915090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210916090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210917090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210918090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210919090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210920090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210921090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210922090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210923090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210924090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210925090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210926090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210927090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210928090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210929090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc',\n 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210930090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc']\n\n\n\n\nOpen and view our AOI without downloading a whole file\n\nCheck to see if we can use an efficient partial-access technique\n\nresponse = requests.head(f'{urls[0]}.dmrpp')\n\nprint('Can we use EosdisZarrStore and XArray to access these files more efficiently?')\nprint('Yes' if response.ok else 'No')\n\nCan we use EosdisZarrStore and XArray to access these files more efficiently?\nYes\n\n\nOpen our first URL using the Zarr library\n\nurl = urls[0]\n\nds = xr.open_zarr(EosdisStore(url), consolidated=False)\n\nThat’s it! No downloads, temporary credentials, or S3 filesystems. Hereafter, we interact with the ds variable as with any XArray dataset. We need not worry about the EosdisStore anymore.\nView the file’s variable structure\n\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 1, lat: 17999, lon: 36000)\nCoordinates:\n * lat (lat) float32 -89.99 -89.98 -89.97 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\n * time (time) datetime64[ns] 2021-09-01T09:00:00\nData variables:\n analysed_sst (time, lat, lon) float32 dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n analysis_error (time, lat, lon) float32 dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n dt_1km_data (time, lat, lon) timedelta64[ns] dask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n mask (time, lat, lon) float32 dask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n sea_ice_fraction (time, lat, lon) float32 dask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n sst_anomaly (time, lat, lon) float32 dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\nAttributes: (12/47)\n Conventions: CF-1.7\n title: Daily MUR SST, Final product\n summary: A merged, multi-sensor L4 Foundation SST anal...\n references: http://podaac.jpl.nasa.gov/Multi-scale_Ultra-...\n institution: Jet Propulsion Laboratory\n history: created at nominal 4-day latency; replaced nr...\n ... ...\n project: NASA Making Earth Science Data Records for Us...\n publisher_name: GHRSST Project Office\n publisher_url: http://www.ghrsst.org\n publisher_email: ghrsst-po@nceo.ac.uk\n processing_level: L4\n cdm_data_type: gridxarray.DatasetDimensions:time: 1lat: 17999lon: 36000Coordinates: (3)lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :geolocations inherited from the input data without correctionarray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :geolocations inherited from the input data without correctionarray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)time(time)datetime64[ns]2021-09-01T09:00:00long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2021-09-01T09:00:00.000000000'], dtype='datetime64[ns]')Data variables: (6)analysed_sst(time, lat, lon)float32dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\\\"Final\\\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n7.99 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1023, 2047)\n\n\nCount\n325 Tasks\n324 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nanalysis_error\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated error standard deviation of analysed_sst\n\nunits :\n\nkelvin\n\nvalid_min :\n\n0\n\nvalid_max :\n\n32767\n\ncomment :\n\nuncertainty in \\\"analysed_sst\\\"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n7.99 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1023, 2047)\n\n\nCount\n325 Tasks\n324 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\ndt_1km_data\n\n\n(time, lat, lon)\n\n\ntimedelta64[ns]\n\n\ndask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime to most recent 1km data\n\nvalid_min :\n\n-127\n\nvalid_max :\n\n127\n\nsource :\n\nMODIS and VIIRS pixels ingested by MUR\n\ncomment :\n\nThe grid value is hours between the analysis time and the most recent MODIS or VIIRS 1km L2P datum within 0.01 degrees from the grid point. \\\"Fill value\\\" indicates absence of such 1km data at the grid point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.83 GiB\n31.96 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1447, 2895)\n\n\nCount\n170 Tasks\n169 Chunks\n\n\nType\ntimedelta64[ns]\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nmask\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea/land field composite mask\n\nvalid_min :\n\n1\n\nvalid_max :\n\n31\n\nflag_masks :\n\n[1, 2, 4, 8, 16]\n\nflag_meanings :\n\nopen_sea land open_lake open_sea_with_ice_in_the_grid open_lake_with_ice_in_the_grid\n\ncomment :\n\nmask can be used to further filter the data.\n\nsource :\n\nGMT \\\"grdlandmask\\\", ice flag from sea_ice_fraction data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n15.98 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1447, 2895)\n\n\nCount\n170 Tasks\n169 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nsea_ice_fraction\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1447, 2895), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea ice area fraction\n\nstandard_name :\n\nsea_ice_area_fraction\n\nvalid_min :\n\n0\n\nvalid_max :\n\n100\n\nsource :\n\nEUMETSAT OSI-SAF, copyright EUMETSAT\n\ncomment :\n\nice fraction is a dimensionless quantity between 0 and 1; it has been interpolated by a nearest neighbor approach.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n15.98 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1447, 2895)\n\n\nCount\n170 Tasks\n169 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\n\n\n\nsst_anomaly\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nSST anomaly from a seasonal SST climatology based on the MUR data over 2003-2014 period\n\nunits :\n\nkelvin\n\nvalid_min :\n\n-32767\n\nvalid_max :\n\n32767\n\ncomment :\n\nanomaly reference to the day-of-year average between 2003 and 2014\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.41 GiB\n7.99 MiB\n\n\nShape\n(1, 17999, 36000)\n(1, 1023, 2047)\n\n\nCount\n325 Tasks\n324 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 36000 17999 1\n\n\n\n\n\nAttributes: (47)Conventions :CF-1.7title :Daily MUR SST, Final productsummary :A merged, multi-sensor L4 Foundation SST analysis product from JPL.references :http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SSTinstitution :Jet Propulsion Laboratoryhistory :created at nominal 4-day latency; replaced nrt (1-day latency) version.comment :MUR = \\\"Multi-scale Ultra-high Resolution\\\"license :These data are available free of charge under data policy of JPL PO.DAAC.id :MUR-JPL-L4-GLOB-v04.1naming_authority :org.ghrsstproduct_version :04.1uuid :27665bc0-d5fc-11e1-9b23-0800200c9a66gds_version_id :2.0netcdf_version_id :4.1date_created :20210910T072132Zstart_time :20210901T090000Zstop_time :20210901T090000Ztime_coverage_start :20210831T210000Ztime_coverage_end :20210901T210000Zfile_quality_level :3source :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRRMTA_G-NAVO, AVHRRMTB_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAFplatform :Terra, Aqua, GCOM-W, MetOp-A, MetOp-B, Buoys/Shipssensor :MODIS, AMSR2, AVHRR, in-situMetadata_Conventions :Unidata Observation Dataset v1.0metadata_link :http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1keywords :Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsouthernmost_latitude :-90.0northernmost_latitude :90.0westernmost_longitude :-180.0easternmost_longitude :180.0spatial_resolution :0.01 degreesgeospatial_lat_units :degrees northgeospatial_lat_resolution :0.009999999776geospatial_lon_units :degrees eastgeospatial_lon_resolution :0.009999999776acknowledgment :Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.creator_name :JPL MUR SST projectcreator_email :ghrsst@podaac.jpl.nasa.govcreator_url :http://mur.jpl.nasa.govproject :NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Programpublisher_name :GHRSST Project Officepublisher_url :http://www.ghrsst.orgpublisher_email :ghrsst-po@nceo.ac.ukprocessing_level :L4cdm_data_type :grid", "crumbs": [ "Tutorials", "Cloud Optimized Examples", @@ -612,7 +612,7 @@ "href": "quarto_text/SMODE.html#additional-resources", "title": "S-MODE", "section": "Additional Resources", - "text": "Additional Resources\n\n2022 S-MODE Open Data Workshop\nhttps://espo.nasa.gov/s-mode/content/S-MODE_2022_Open_Data_Workshop - Recordings and Presentations\nThe Submesoscale Ocean Dynamics and Vertical Transport Experiment (S-MODE) science team is hosted a virtual Open Data Workshop on 1 December 2022 from 11:00am – 1:00pm ET to share about the S-MODE mission, to learn about its instrumentation, and find out how to access and use its data products.", + "text": "Additional Resources\n\nData in Action Story\nA Closer Look at the Sub-Mesoscale Ocean Dynamics Experiment (S-MODE)\n\n\n2022 S-MODE Open Data Workshop\nhttps://espo.nasa.gov/s-mode/content/S-MODE_2022_Open_Data_Workshop - Recordings and Presentations\nThe Submesoscale Ocean Dynamics and Vertical Transport Experiment (S-MODE) science team hosted a virtual Open Data Workshop on 1 December 2022 from 11:00am – 1:00pm ET to share about the S-MODE mission, to learn about its instrumentation, and find out how to access and use its data products.", "crumbs": [ "Tutorials", "Dataset Specific", @@ -938,7 +938,7 @@ "href": "quarto_text/ECCO.html#additional-resources", "title": "ECCO", "section": "Additional Resources", - "text": "Additional Resources\nECCO Project Website", + "text": "Additional Resources\nECCO Project Website\nData in Action: Unveiling small-scale ocean circulation through high-resolution Sea Surface Height", "crumbs": [ "Tutorials", "Dataset Specific", @@ -998,7 +998,7 @@ "href": "notebooks/Advanced_cloud/basic_dask.html#loading-data-and-chunking", "title": "Basics of Xarray with Dask Parallization for Earth Data", "section": "3.1 Loading data and chunking", - "text": "3.1 Loading data and chunking\nFirst, load the data for multiple timestamps into one Xarray dataset (the MUR data set is appropriately formatted, so Xarray can combine the data from multiple files along the time dimension):\n\nsstdata = xr.open_mfdataset(fileobjs[:10])\nsstdata['analysed_sst']\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'analysed_sst' (time: 10, lat: 17999, lon: 36000)>\ndask.array<concatenate, shape=(10, 17999, 36000), dtype=float32, chunksize=(1, 1023, 2047), chunktype=numpy.ndarray>\nCoordinates:\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-01-10T09:00:00\n * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\nAttributes: (7)xarray.DataArray'analysed_sst'time: 10lat: 17999lon: 36000dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n24.14 GiB\n7.99 MiB\n\n\nShape\n(10, 17999, 36000)\n(1, 1023, 2047)\n\n\nDask graph\n3240 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 10\n\n\n\n\nCoordinates: (3)time(time)datetime64[ns]2019-01-01T09:00:00 ... 2019-01-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2019-01-01T09:00:00.000000000', '2019-01-02T09:00:00.000000000',\n '2019-01-03T09:00:00.000000000', '2019-01-04T09:00:00.000000000',\n '2019-01-05T09:00:00.000000000', '2019-01-06T09:00:00.000000000',\n '2019-01-07T09:00:00.000000000', '2019-01-08T09:00:00.000000000',\n '2019-01-09T09:00:00.000000000', '2019-01-10T09:00:00.000000000'],\n dtype='datetime64[ns]')lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :nonearray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :nonearray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)Indexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2019-01-01 09:00:00', '2019-01-02 09:00:00',\n '2019-01-03 09:00:00', '2019-01-04 09:00:00',\n '2019-01-05 09:00:00', '2019-01-06 09:00:00',\n '2019-01-07 09:00:00', '2019-01-08 09:00:00',\n '2019-01-09 09:00:00', '2019-01-10 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))latPandasIndexPandasIndex(Index([-89.98999786376953, -89.9800033569336, -89.97000122070312,\n -89.95999908447266, -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531, -89.91000366210938,\n -89.9000015258789,\n ...\n 89.9000015258789, 89.91000366210938, 89.91999816894531,\n 89.93000030517578, 89.94000244140625, 89.94999694824219,\n 89.95999908447266, 89.97000122070312, 89.9800033569336,\n 89.98999786376953],\n dtype='float32', name='lat', length=17999))lonPandasIndexPandasIndex(Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n 179.91000366210938, 179.9199981689453, 179.92999267578125,\n 179.94000244140625, 179.9499969482422, 179.9600067138672,\n 179.97000122070312, 179.97999572753906, 179.99000549316406,\n 180.0],\n dtype='float32', name='lon', length=36000))Attributes: (7)long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF\n\n\n\nXarray has also chunked the data arrays, which is important for parallel processing. The concept of chunks is covered in the prerequisite material linked to in the header, but in short they are the subsets of data that processors will work on in parallel.\nHowever, note that in the above chunking strategy (defaulted to by Xarray) there are 2 hang ups. First, the time dimension has a small chunk size, which is not efficient if we are looking to perform computations primarily along that axis. Second, the chunk sizes are too small - a good rule of thumb is to make chunk sizes ~100 MB. Therefore, we rechunk to something more efficient:\n\nsstdata = sstdata.chunk(chunks={'lat': 1000, 'lon': 3000, 'time': 10})\nsstdata['analysed_sst']\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'analysed_sst' (time: 10, lat: 17999, lon: 36000)>\ndask.array<rechunk-merge, shape=(10, 17999, 36000), dtype=float32, chunksize=(10, 1000, 3000), chunktype=numpy.ndarray>\nCoordinates:\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-01-10T09:00:00\n * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\nAttributes: (7)xarray.DataArray'analysed_sst'time: 10lat: 17999lon: 36000dask.array<chunksize=(10, 1000, 3000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n24.14 GiB\n114.44 MiB\n\n\nShape\n(10, 17999, 36000)\n(10, 1000, 3000)\n\n\nDask graph\n216 chunks in 22 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 10\n\n\n\n\nCoordinates: (3)time(time)datetime64[ns]2019-01-01T09:00:00 ... 2019-01-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2019-01-01T09:00:00.000000000', '2019-01-02T09:00:00.000000000',\n '2019-01-03T09:00:00.000000000', '2019-01-04T09:00:00.000000000',\n '2019-01-05T09:00:00.000000000', '2019-01-06T09:00:00.000000000',\n '2019-01-07T09:00:00.000000000', '2019-01-08T09:00:00.000000000',\n '2019-01-09T09:00:00.000000000', '2019-01-10T09:00:00.000000000'],\n dtype='datetime64[ns]')lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :nonearray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :nonearray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)Indexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2019-01-01 09:00:00', '2019-01-02 09:00:00',\n '2019-01-03 09:00:00', '2019-01-04 09:00:00',\n '2019-01-05 09:00:00', '2019-01-06 09:00:00',\n '2019-01-07 09:00:00', '2019-01-08 09:00:00',\n '2019-01-09 09:00:00', '2019-01-10 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))latPandasIndexPandasIndex(Index([-89.98999786376953, -89.9800033569336, -89.97000122070312,\n -89.95999908447266, -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531, -89.91000366210938,\n -89.9000015258789,\n ...\n 89.9000015258789, 89.91000366210938, 89.91999816894531,\n 89.93000030517578, 89.94000244140625, 89.94999694824219,\n 89.95999908447266, 89.97000122070312, 89.9800033569336,\n 89.98999786376953],\n dtype='float32', name='lat', length=17999))lonPandasIndexPandasIndex(Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n 179.91000366210938, 179.9199981689453, 179.92999267578125,\n 179.94000244140625, 179.9499969482422, 179.9600067138672,\n 179.97000122070312, 179.97999572753906, 179.99000549316406,\n 180.0],\n dtype='float32', name='lon', length=36000))Attributes: (7)long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF", + "text": "3.1 Loading data and chunking\nFirst, load the data for multiple timestamps into one Xarray dataset (the MUR data set is appropriately formatted, so Xarray can combine the data from multiple files along the time dimension):\n\nsstdata = xr.open_mfdataset(fileobjs[:10])\nsstdata['analysed_sst']\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'analysed_sst' (time: 10, lat: 17999, lon: 36000)>\ndask.array<concatenate, shape=(10, 17999, 36000), dtype=float32, chunksize=(1, 1023, 2047), chunktype=numpy.ndarray>\nCoordinates:\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-01-10T09:00:00\n * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\nAttributes: (7)xarray.DataArray'analysed_sst'time: 10lat: 17999lon: 36000dask.array<chunksize=(1, 1023, 2047), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n24.14 GiB\n7.99 MiB\n\n\nShape\n(10, 17999, 36000)\n(1, 1023, 2047)\n\n\nDask graph\n3240 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 10\n\n\n\n\nCoordinates: (3)time(time)datetime64[ns]2019-01-01T09:00:00 ... 2019-01-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2019-01-01T09:00:00.000000000', '2019-01-02T09:00:00.000000000',\n '2019-01-03T09:00:00.000000000', '2019-01-04T09:00:00.000000000',\n '2019-01-05T09:00:00.000000000', '2019-01-06T09:00:00.000000000',\n '2019-01-07T09:00:00.000000000', '2019-01-08T09:00:00.000000000',\n '2019-01-09T09:00:00.000000000', '2019-01-10T09:00:00.000000000'],\n dtype='datetime64[ns]')lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :nonearray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :nonearray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)Indexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2019-01-01 09:00:00', '2019-01-02 09:00:00',\n '2019-01-03 09:00:00', '2019-01-04 09:00:00',\n '2019-01-05 09:00:00', '2019-01-06 09:00:00',\n '2019-01-07 09:00:00', '2019-01-08 09:00:00',\n '2019-01-09 09:00:00', '2019-01-10 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))latPandasIndexPandasIndex(Index([-89.98999786376953, -89.9800033569336, -89.97000122070312,\n -89.95999908447266, -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531, -89.91000366210938,\n -89.9000015258789,\n ...\n 89.9000015258789, 89.91000366210938, 89.91999816894531,\n 89.93000030517578, 89.94000244140625, 89.94999694824219,\n 89.95999908447266, 89.97000122070312, 89.9800033569336,\n 89.98999786376953],\n dtype='float32', name='lat', length=17999))lonPandasIndexPandasIndex(Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n 179.91000366210938, 179.9199981689453, 179.92999267578125,\n 179.94000244140625, 179.9499969482422, 179.9600067138672,\n 179.97000122070312, 179.97999572753906, 179.99000549316406,\n 180.0],\n dtype='float32', name='lon', length=36000))Attributes: (7)long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF\n\n\nXarray has also chunked the data arrays, which is important for parallel processing. The concept of chunks is covered in the prerequisite material linked to in the header, but in short they are the subsets of data that processors will work on in parallel.\nHowever, note that in the above chunking strategy (defaulted to by Xarray) there are 2 hang ups. First, the time dimension has a small chunk size, which is not efficient if we are looking to perform computations primarily along that axis. Second, the chunk sizes are too small - a good rule of thumb is to make chunk sizes ~100 MB. Therefore, we rechunk to something more efficient:\n\nsstdata = sstdata.chunk(chunks={'lat': 1000, 'lon': 3000, 'time': 10})\nsstdata['analysed_sst']\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'analysed_sst' (time: 10, lat: 17999, lon: 36000)>\ndask.array<rechunk-merge, shape=(10, 17999, 36000), dtype=float32, chunksize=(10, 1000, 3000), chunktype=numpy.ndarray>\nCoordinates:\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-01-10T09:00:00\n * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\nAttributes: (7)xarray.DataArray'analysed_sst'time: 10lat: 17999lon: 36000dask.array<chunksize=(10, 1000, 3000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n24.14 GiB\n114.44 MiB\n\n\nShape\n(10, 17999, 36000)\n(10, 1000, 3000)\n\n\nDask graph\n216 chunks in 22 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 10\n\n\n\n\nCoordinates: (3)time(time)datetime64[ns]2019-01-01T09:00:00 ... 2019-01-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2019-01-01T09:00:00.000000000', '2019-01-02T09:00:00.000000000',\n '2019-01-03T09:00:00.000000000', '2019-01-04T09:00:00.000000000',\n '2019-01-05T09:00:00.000000000', '2019-01-06T09:00:00.000000000',\n '2019-01-07T09:00:00.000000000', '2019-01-08T09:00:00.000000000',\n '2019-01-09T09:00:00.000000000', '2019-01-10T09:00:00.000000000'],\n dtype='datetime64[ns]')lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :nonearray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :nonearray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)Indexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2019-01-01 09:00:00', '2019-01-02 09:00:00',\n '2019-01-03 09:00:00', '2019-01-04 09:00:00',\n '2019-01-05 09:00:00', '2019-01-06 09:00:00',\n '2019-01-07 09:00:00', '2019-01-08 09:00:00',\n '2019-01-09 09:00:00', '2019-01-10 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))latPandasIndexPandasIndex(Index([-89.98999786376953, -89.9800033569336, -89.97000122070312,\n -89.95999908447266, -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531, -89.91000366210938,\n -89.9000015258789,\n ...\n 89.9000015258789, 89.91000366210938, 89.91999816894531,\n 89.93000030517578, 89.94000244140625, 89.94999694824219,\n 89.95999908447266, 89.97000122070312, 89.9800033569336,\n 89.98999786376953],\n dtype='float32', name='lat', length=17999))lonPandasIndexPandasIndex(Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n 179.91000366210938, 179.9199981689453, 179.92999267578125,\n 179.94000244140625, 179.9499969482422, 179.9600067138672,\n 179.97000122070312, 179.97999572753906, 179.99000549316406,\n 180.0],\n dtype='float32', name='lon', length=36000))Attributes: (7)long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF", "crumbs": [ "Tutorials", "Dataset Specific", @@ -1121,7 +1121,7 @@ "href": "notebooks/DataStories/eof_example_ersst.html#load-data", "title": "EOF decomposition of global monthly SST data using the xeofs package", "section": "1.3 Load data", - "text": "1.3 Load data\nIf working in the cloud, loading and combining all files for this analysis into a single dataset object will take 2-4 minutes. This can be sped up using e.g. kerchunk or parallelization with remote clusters, but to simplify this notebook those methods are not implemented.\nSince we are using Xarray’s open_mfdataset() the returned object includes Dask arrays instead of NumPy arrays. The SST data is small enough that we can load it all into memory, which we will do so that we can proceed even if you are not familiar with Dask arrays (all you need to know is that we have not actually loaded the data into memory yet, so we need one more step after loading the data).\n\n%%time\n\n# Load data:\nsstdata = xr.open_mfdataset(fileobjs)\nsstdata = sstdata.squeeze() # Remove the unnecessary 'lev' dimension (size 1)\nsstdata\n\nCPU times: user 36.2 s, sys: 426 ms, total: 36.6 s\nWall time: 2min 48s\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (lat: 89, lon: 180, time: 1176)\nCoordinates:\n * lat (lat) float64 -88.0 -86.0 -84.0 -82.0 -80.0 ... 82.0 84.0 86.0 88.0\n lev float64 0.0\n * lon (lon) float64 0.0 2.0 4.0 6.0 8.0 ... 350.0 352.0 354.0 356.0 358.0\n * time (time) object 1910-01-01 00:00:00 ... 2007-12-01 00:00:00\nData variables:\n sst (time, lat, lon) float32 dask.array<chunksize=(1, 89, 180), meta=np.ndarray>\n ssta (time, lat, lon) float32 dask.array<chunksize=(1, 89, 180), meta=np.ndarray>\nAttributes: (12/38)\n Conventions: CF-1.6, ACDD-1.3\n metadata_link: https://doi.org/10.7289/V5T72FNM\n id: ersst.v5.191001\n naming_authority: gov.noaa.ncei\n title: NOAA ERSSTv5 (in situ only)\n summary: ERSST.v5 is developped based on v4 after revi...\n ... ...\n platform: Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTS\n instrument: Conventional thermometers\n source: In situ data: ICOADS R3.0 before 2015, NCEP i...\n comment: SSTs were observed by conventional thermomete...\n references: Huang et al, 2017: Extended Reconstructed Sea...\n climatology: Climatology is based on 1971-2000 SST, Xue, Y...xarray.DatasetDimensions:lat: 89lon: 180time: 1176Coordinates: (4)lat(lat)float64-88.0 -86.0 -84.0 ... 86.0 88.0units :degrees_northlong_name :Latitudestandard_name :latitudeaxis :Ycomment :Uniform grid from -88 to 88 by 2array([-88., -86., -84., -82., -80., -78., -76., -74., -72., -70., -68., -66.,\n -64., -62., -60., -58., -56., -54., -52., -50., -48., -46., -44., -42.,\n -40., -38., -36., -34., -32., -30., -28., -26., -24., -22., -20., -18.,\n -16., -14., -12., -10., -8., -6., -4., -2., 0., 2., 4., 6.,\n 8., 10., 12., 14., 16., 18., 20., 22., 24., 26., 28., 30.,\n 32., 34., 36., 38., 40., 42., 44., 46., 48., 50., 52., 54.,\n 56., 58., 60., 62., 64., 66., 68., 70., 72., 74., 76., 78.,\n 80., 82., 84., 86., 88.])lev()float640.0units :meterslong_name :Depth of sea surface temperature measurementsstandard_name :depthaxis :Zpositive :down_CoordinateAxisType :Heightcomment :Actual measurement depth of in situ sea surface temperature varies from 0.2 to 10 m, but corrected to the nominal depth of buoy at 0.2 marray(0.)lon(lon)float640.0 2.0 4.0 ... 354.0 356.0 358.0units :degrees_eastlong_name :Longitudestandard_name :longitudeaxis :Xcomment :Uniform grid from 0 to 358 by 2array([ 0., 2., 4., 6., 8., 10., 12., 14., 16., 18., 20., 22.,\n 24., 26., 28., 30., 32., 34., 36., 38., 40., 42., 44., 46.,\n 48., 50., 52., 54., 56., 58., 60., 62., 64., 66., 68., 70.,\n 72., 74., 76., 78., 80., 82., 84., 86., 88., 90., 92., 94.,\n 96., 98., 100., 102., 104., 106., 108., 110., 112., 114., 116., 118.,\n 120., 122., 124., 126., 128., 130., 132., 134., 136., 138., 140., 142.,\n 144., 146., 148., 150., 152., 154., 156., 158., 160., 162., 164., 166.,\n 168., 170., 172., 174., 176., 178., 180., 182., 184., 186., 188., 190.,\n 192., 194., 196., 198., 200., 202., 204., 206., 208., 210., 212., 214.,\n 216., 218., 220., 222., 224., 226., 228., 230., 232., 234., 236., 238.,\n 240., 242., 244., 246., 248., 250., 252., 254., 256., 258., 260., 262.,\n 264., 266., 268., 270., 272., 274., 276., 278., 280., 282., 284., 286.,\n 288., 290., 292., 294., 296., 298., 300., 302., 304., 306., 308., 310.,\n 312., 314., 316., 318., 320., 322., 324., 326., 328., 330., 332., 334.,\n 336., 338., 340., 342., 344., 346., 348., 350., 352., 354., 356., 358.])time(time)object1910-01-01 00:00:00 ... 2007-12-...long_name :Start time of monthstandard_name :timeaxis :Tdelta_t :0000-01-00avg_period :0000-01-00array([cftime.Datetime360Day(1910, 1, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(1910, 2, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(1910, 3, 1, 0, 0, 0, 0, has_year_zero=True), ...,\n cftime.Datetime360Day(2007, 10, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(2007, 11, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(2007, 12, 1, 0, 0, 0, 0, has_year_zero=True)],\n dtype=object)Data variables: (2)sst(time, lat, lon)float32dask.array<chunksize=(1, 89, 180), meta=np.ndarray>long_name :Extended reconstructed sea surface temperaturestandard_name :sea_surface_temperatureunits :degree_Cvalid_min :-3.0valid_max :45.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n71.87 MiB\n62.58 kiB\n\n\nShape\n(1176, 89, 180)\n(1, 89, 180)\n\n\nDask graph\n1176 chunks in 2354 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 180 89 1176\n\n\n\n\n\n\n\n\nssta\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 89, 180), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nExtended reconstructed SST anomalies\n\nunits :\n\ndegree_C\n\nvalid_min :\n\n-12.0\n\nvalid_max :\n\n12.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n71.87 MiB\n62.58 kiB\n\n\nShape\n(1176, 89, 180)\n(1, 89, 180)\n\n\nDask graph\n1176 chunks in 2354 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 180 89 1176\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Index([-88.0, -86.0, -84.0, -82.0, -80.0, -78.0, -76.0, -74.0, -72.0, -70.0,\n -68.0, -66.0, -64.0, -62.0, -60.0, -58.0, -56.0, -54.0, -52.0, -50.0,\n -48.0, -46.0, -44.0, -42.0, -40.0, -38.0, -36.0, -34.0, -32.0, -30.0,\n -28.0, -26.0, -24.0, -22.0, -20.0, -18.0, -16.0, -14.0, -12.0, -10.0,\n -8.0, -6.0, -4.0, -2.0, 0.0, 2.0, 4.0, 6.0, 8.0, 10.0,\n 12.0, 14.0, 16.0, 18.0, 20.0, 22.0, 24.0, 26.0, 28.0, 30.0,\n 32.0, 34.0, 36.0, 38.0, 40.0, 42.0, 44.0, 46.0, 48.0, 50.0,\n 52.0, 54.0, 56.0, 58.0, 60.0, 62.0, 64.0, 66.0, 68.0, 70.0,\n 72.0, 74.0, 76.0, 78.0, 80.0, 82.0, 84.0, 86.0, 88.0],\n dtype='float64', name='lat'))lonPandasIndexPandasIndex(Index([ 0.0, 2.0, 4.0, 6.0, 8.0, 10.0, 12.0, 14.0, 16.0, 18.0,\n ...\n 340.0, 342.0, 344.0, 346.0, 348.0, 350.0, 352.0, 354.0, 356.0, 358.0],\n dtype='float64', name='lon', length=180))timePandasIndexPandasIndex(CFTimeIndex([1910-01-01 00:00:00, 1910-02-01 00:00:00, 1910-03-01 00:00:00,\n 1910-04-01 00:00:00, 1910-05-01 00:00:00, 1910-06-01 00:00:00,\n 1910-07-01 00:00:00, 1910-08-01 00:00:00, 1910-09-01 00:00:00,\n 1910-10-01 00:00:00,\n ...\n 2007-03-01 00:00:00, 2007-04-01 00:00:00, 2007-05-01 00:00:00,\n 2007-06-01 00:00:00, 2007-07-01 00:00:00, 2007-08-01 00:00:00,\n 2007-09-01 00:00:00, 2007-10-01 00:00:00, 2007-11-01 00:00:00,\n 2007-12-01 00:00:00],\n dtype='object', length=1176, calendar='360_day', freq='MS'))Attributes: (38)Conventions :CF-1.6, ACDD-1.3metadata_link :https://doi.org/10.7289/V5T72FNMid :ersst.v5.191001naming_authority :gov.noaa.nceititle :NOAA ERSSTv5 (in situ only)summary :ERSST.v5 is developped based on v4 after revisions of 8 parameters using updated data sets and advanced knowledge of ERSST analysisinstitution :NOAA/NESDIS/NCEI/CCOGcreator_name :Boyin Huangcreator_email :boyin.huang@noaa.govdate_created :2017-06-30T12:18:00Zdate_modified :2017-06-30T12:18:00Zproduct_version :Version 5history :Fri Jun 30 12:26:49 2017: ncatted -O -a _FillValue,ssta,o,f,-999.0 ssta.nc\nVersion 5 based on Version 4creator_url :https://www.ncei.noaa.govlicense :No constraints on data access or usetime_coverage_start :1910-01-01T00:00:00Ztime_coverage_end :1910-02-01T00:00:00Zgeospatial_lon_min :-1.0geospatial_lon_max :359.0geospatial_lat_min :-89.0geospatial_lat_max :89.0geospatial_lat_units :degrees_northgeospatial_lat_resolution :2.0geospatial_lon_units :degrees_eastgeospatial_lon_resolution :2.0spatial_resolution :2.0 degree gridcdm_data_type :Gridprocessing_level :NOAA Level 4standard_name_vocabulary :CF Standard Name Table (v40, 25 January 2017)keywords :Earth Science > Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsproject :NOAA Extended Reconstructed Sea Surface Temperature (ERSST)platform :Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTSinstrument :Conventional thermometerssource :In situ data: ICOADS R3.0 before 2015, NCEP in situ GTS from 2016 to present, and Argo SST from 1999 to present. Ice data: HadISST2 ice before 2015, and NCEP ice after 2015.comment :SSTs were observed by conventional thermometers in Buckets (in sulated or un-insulated canvas and wooded buckets), Engine Room Intakers, or floats and driftersreferences :Huang et al, 2017: Extended Reconstructed Sea Surface Temperatures Version 5 (ERSSTv5): Upgrades, Validations, and Intercomparisons. Journal of Climate, https://doi.org/10.1175/JCLI-D-16-0836.1climatology :Climatology is based on 1971-2000 SST, Xue, Y., T. M. Smith, and R. W. Reynolds, 2003: Interdecadal changes of 30-yr SST normals during 1871.2000. Journal of Climate, 16, 1601-1612.", + "text": "1.3 Load data\nIf working in the cloud, loading and combining all files for this analysis into a single dataset object will take 2-4 minutes. This can be sped up using e.g. kerchunk or parallelization with remote clusters, but to simplify this notebook those methods are not implemented.\nSince we are using Xarray’s open_mfdataset() the returned object includes Dask arrays instead of NumPy arrays. The SST data is small enough that we can load it all into memory, which we will do so that we can proceed even if you are not familiar with Dask arrays (all you need to know is that we have not actually loaded the data into memory yet, so we need one more step after loading the data).\n\n%%time\n\n# Load data:\nsstdata = xr.open_mfdataset(fileobjs)\nsstdata = sstdata.squeeze() # Remove the unnecessary 'lev' dimension (size 1)\nsstdata\n\nCPU times: user 36.2 s, sys: 426 ms, total: 36.6 s\nWall time: 2min 48s\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (lat: 89, lon: 180, time: 1176)\nCoordinates:\n * lat (lat) float64 -88.0 -86.0 -84.0 -82.0 -80.0 ... 82.0 84.0 86.0 88.0\n lev float64 0.0\n * lon (lon) float64 0.0 2.0 4.0 6.0 8.0 ... 350.0 352.0 354.0 356.0 358.0\n * time (time) object 1910-01-01 00:00:00 ... 2007-12-01 00:00:00\nData variables:\n sst (time, lat, lon) float32 dask.array<chunksize=(1, 89, 180), meta=np.ndarray>\n ssta (time, lat, lon) float32 dask.array<chunksize=(1, 89, 180), meta=np.ndarray>\nAttributes: (12/38)\n Conventions: CF-1.6, ACDD-1.3\n metadata_link: https://doi.org/10.7289/V5T72FNM\n id: ersst.v5.191001\n naming_authority: gov.noaa.ncei\n title: NOAA ERSSTv5 (in situ only)\n summary: ERSST.v5 is developped based on v4 after revi...\n ... ...\n platform: Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTS\n instrument: Conventional thermometers\n source: In situ data: ICOADS R3.0 before 2015, NCEP i...\n comment: SSTs were observed by conventional thermomete...\n references: Huang et al, 2017: Extended Reconstructed Sea...\n climatology: Climatology is based on 1971-2000 SST, Xue, Y...xarray.DatasetDimensions:lat: 89lon: 180time: 1176Coordinates: (4)lat(lat)float64-88.0 -86.0 -84.0 ... 86.0 88.0units :degrees_northlong_name :Latitudestandard_name :latitudeaxis :Ycomment :Uniform grid from -88 to 88 by 2array([-88., -86., -84., -82., -80., -78., -76., -74., -72., -70., -68., -66.,\n -64., -62., -60., -58., -56., -54., -52., -50., -48., -46., -44., -42.,\n -40., -38., -36., -34., -32., -30., -28., -26., -24., -22., -20., -18.,\n -16., -14., -12., -10., -8., -6., -4., -2., 0., 2., 4., 6.,\n 8., 10., 12., 14., 16., 18., 20., 22., 24., 26., 28., 30.,\n 32., 34., 36., 38., 40., 42., 44., 46., 48., 50., 52., 54.,\n 56., 58., 60., 62., 64., 66., 68., 70., 72., 74., 76., 78.,\n 80., 82., 84., 86., 88.])lev()float640.0units :meterslong_name :Depth of sea surface temperature measurementsstandard_name :depthaxis :Zpositive :down_CoordinateAxisType :Heightcomment :Actual measurement depth of in situ sea surface temperature varies from 0.2 to 10 m, but corrected to the nominal depth of buoy at 0.2 marray(0.)lon(lon)float640.0 2.0 4.0 ... 354.0 356.0 358.0units :degrees_eastlong_name :Longitudestandard_name :longitudeaxis :Xcomment :Uniform grid from 0 to 358 by 2array([ 0., 2., 4., 6., 8., 10., 12., 14., 16., 18., 20., 22.,\n 24., 26., 28., 30., 32., 34., 36., 38., 40., 42., 44., 46.,\n 48., 50., 52., 54., 56., 58., 60., 62., 64., 66., 68., 70.,\n 72., 74., 76., 78., 80., 82., 84., 86., 88., 90., 92., 94.,\n 96., 98., 100., 102., 104., 106., 108., 110., 112., 114., 116., 118.,\n 120., 122., 124., 126., 128., 130., 132., 134., 136., 138., 140., 142.,\n 144., 146., 148., 150., 152., 154., 156., 158., 160., 162., 164., 166.,\n 168., 170., 172., 174., 176., 178., 180., 182., 184., 186., 188., 190.,\n 192., 194., 196., 198., 200., 202., 204., 206., 208., 210., 212., 214.,\n 216., 218., 220., 222., 224., 226., 228., 230., 232., 234., 236., 238.,\n 240., 242., 244., 246., 248., 250., 252., 254., 256., 258., 260., 262.,\n 264., 266., 268., 270., 272., 274., 276., 278., 280., 282., 284., 286.,\n 288., 290., 292., 294., 296., 298., 300., 302., 304., 306., 308., 310.,\n 312., 314., 316., 318., 320., 322., 324., 326., 328., 330., 332., 334.,\n 336., 338., 340., 342., 344., 346., 348., 350., 352., 354., 356., 358.])time(time)object1910-01-01 00:00:00 ... 2007-12-...long_name :Start time of monthstandard_name :timeaxis :Tdelta_t :0000-01-00avg_period :0000-01-00array([cftime.Datetime360Day(1910, 1, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(1910, 2, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(1910, 3, 1, 0, 0, 0, 0, has_year_zero=True), ...,\n cftime.Datetime360Day(2007, 10, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(2007, 11, 1, 0, 0, 0, 0, has_year_zero=True),\n cftime.Datetime360Day(2007, 12, 1, 0, 0, 0, 0, has_year_zero=True)],\n dtype=object)Data variables: (2)sst(time, lat, lon)float32dask.array<chunksize=(1, 89, 180), meta=np.ndarray>long_name :Extended reconstructed sea surface temperaturestandard_name :sea_surface_temperatureunits :degree_Cvalid_min :-3.0valid_max :45.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n71.87 MiB\n62.58 kiB\n\n\nShape\n(1176, 89, 180)\n(1, 89, 180)\n\n\nDask graph\n1176 chunks in 2354 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 180 89 1176\n\n\n\n\n\n\n\n\nssta\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 89, 180), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nExtended reconstructed SST anomalies\n\nunits :\n\ndegree_C\n\nvalid_min :\n\n-12.0\n\nvalid_max :\n\n12.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n71.87 MiB\n62.58 kiB\n\n\nShape\n(1176, 89, 180)\n(1, 89, 180)\n\n\nDask graph\n1176 chunks in 2354 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 180 89 1176\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Index([-88.0, -86.0, -84.0, -82.0, -80.0, -78.0, -76.0, -74.0, -72.0, -70.0,\n -68.0, -66.0, -64.0, -62.0, -60.0, -58.0, -56.0, -54.0, -52.0, -50.0,\n -48.0, -46.0, -44.0, -42.0, -40.0, -38.0, -36.0, -34.0, -32.0, -30.0,\n -28.0, -26.0, -24.0, -22.0, -20.0, -18.0, -16.0, -14.0, -12.0, -10.0,\n -8.0, -6.0, -4.0, -2.0, 0.0, 2.0, 4.0, 6.0, 8.0, 10.0,\n 12.0, 14.0, 16.0, 18.0, 20.0, 22.0, 24.0, 26.0, 28.0, 30.0,\n 32.0, 34.0, 36.0, 38.0, 40.0, 42.0, 44.0, 46.0, 48.0, 50.0,\n 52.0, 54.0, 56.0, 58.0, 60.0, 62.0, 64.0, 66.0, 68.0, 70.0,\n 72.0, 74.0, 76.0, 78.0, 80.0, 82.0, 84.0, 86.0, 88.0],\n dtype='float64', name='lat'))lonPandasIndexPandasIndex(Index([ 0.0, 2.0, 4.0, 6.0, 8.0, 10.0, 12.0, 14.0, 16.0, 18.0,\n ...\n 340.0, 342.0, 344.0, 346.0, 348.0, 350.0, 352.0, 354.0, 356.0, 358.0],\n dtype='float64', name='lon', length=180))timePandasIndexPandasIndex(CFTimeIndex([1910-01-01 00:00:00, 1910-02-01 00:00:00, 1910-03-01 00:00:00,\n 1910-04-01 00:00:00, 1910-05-01 00:00:00, 1910-06-01 00:00:00,\n 1910-07-01 00:00:00, 1910-08-01 00:00:00, 1910-09-01 00:00:00,\n 1910-10-01 00:00:00,\n ...\n 2007-03-01 00:00:00, 2007-04-01 00:00:00, 2007-05-01 00:00:00,\n 2007-06-01 00:00:00, 2007-07-01 00:00:00, 2007-08-01 00:00:00,\n 2007-09-01 00:00:00, 2007-10-01 00:00:00, 2007-11-01 00:00:00,\n 2007-12-01 00:00:00],\n dtype='object', length=1176, calendar='360_day', freq='MS'))Attributes: (38)Conventions :CF-1.6, ACDD-1.3metadata_link :https://doi.org/10.7289/V5T72FNMid :ersst.v5.191001naming_authority :gov.noaa.nceititle :NOAA ERSSTv5 (in situ only)summary :ERSST.v5 is developped based on v4 after revisions of 8 parameters using updated data sets and advanced knowledge of ERSST analysisinstitution :NOAA/NESDIS/NCEI/CCOGcreator_name :Boyin Huangcreator_email :boyin.huang@noaa.govdate_created :2017-06-30T12:18:00Zdate_modified :2017-06-30T12:18:00Zproduct_version :Version 5history :Fri Jun 30 12:26:49 2017: ncatted -O -a _FillValue,ssta,o,f,-999.0 ssta.nc\nVersion 5 based on Version 4creator_url :https://www.ncei.noaa.govlicense :No constraints on data access or usetime_coverage_start :1910-01-01T00:00:00Ztime_coverage_end :1910-02-01T00:00:00Zgeospatial_lon_min :-1.0geospatial_lon_max :359.0geospatial_lat_min :-89.0geospatial_lat_max :89.0geospatial_lat_units :degrees_northgeospatial_lat_resolution :2.0geospatial_lon_units :degrees_eastgeospatial_lon_resolution :2.0spatial_resolution :2.0 degree gridcdm_data_type :Gridprocessing_level :NOAA Level 4standard_name_vocabulary :CF Standard Name Table (v40, 25 January 2017)keywords :Earth Science > Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsproject :NOAA Extended Reconstructed Sea Surface Temperature (ERSST)platform :Ship and Buoy SSTs from ICOADS R3.0 and NCEP GTSinstrument :Conventional thermometerssource :In situ data: ICOADS R3.0 before 2015, NCEP in situ GTS from 2016 to present, and Argo SST from 1999 to present. Ice data: HadISST2 ice before 2015, and NCEP ice after 2015.comment :SSTs were observed by conventional thermometers in Buckets (in sulated or un-insulated canvas and wooded buckets), Engine Room Intakers, or floats and driftersreferences :Huang et al, 2017: Extended Reconstructed Sea Surface Temperatures Version 5 (ERSSTv5): Upgrades, Validations, and Intercomparisons. Journal of Climate, https://doi.org/10.1175/JCLI-D-16-0836.1climatology :Climatology is based on 1971-2000 SST, Xue, Y., T. M. Smith, and R. W. Reynolds, 2003: Interdecadal changes of 30-yr SST normals during 1871.2000. Journal of Climate, 16, 1601-1612.", "crumbs": [ "Tutorials", "Science Data Stories", @@ -1391,14 +1391,14 @@ "href": "notebooks/SWORD_River_Demo.html#accessing-data-in-the-cloud-skip-this-chunk-if-local", "title": "SWORD River Demo", "section": "Accessing Data in the Cloud (skip this chunk if local)", - "text": "Accessing Data in the Cloud (skip this chunk if local)\nThis code chunk will only work if you are running this script in the cloud, AWS us-west-2 region.\n\n#access data within the cloud and open into an xarray dataset\nds_SWOT_raster = xr.open_mfdataset(earthaccess.open([results[0]]), engine=\"h5netcdf\")\nds_SWOT_raster\n\nOpening 1 granules, approx size: 0.01 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (x: 581, y: 582)\nCoordinates:\n * x (x) float64 3.585e+05 3.588e+05 ... 5.035e+05\n * y (y) float64 9.358e+06 9.358e+06 ... 9.503e+06\nData variables: (12/39)\n crs object ...\n longitude (y, x) float64 dask.array<chunksize=(582, 581), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(582, 581), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(582, 581), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2023-11-30T07:08:40Z : Creation\n platform: SWOT\n references: V1.1.1\n ... ...\n x_min: 358500.0\n x_max: 503500.0\n y_min: 9357750.0\n y_max: 9503000.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:x: 581y: 582Coordinates: (2)x(x)float643.585e+05 3.588e+05 ... 5.035e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([358500., 358750., 359000., ..., 503000., 503250., 503500.])y(y)float649.358e+06 9.358e+06 ... 9.503e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([9357750., 9358000., 9358250., ..., 9502500., 9502750., 9503000.])Data variables: (39)crs()object...long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 34Sgeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :10000000.0longitude_of_central_meridian :21.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 34S\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",21],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",10000000],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32734\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 34S\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",21],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",10000000],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32734\"]]comment :UTM zone coordinate reference system.[1 values with dtype=object]longitude(y, x)float64dask.array<chunksize=(582, 581), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded low_coherence_water_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 2097152 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4046221478\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044124590\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044255655\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\nIndexes: (2)xPandasIndexPandasIndex(Float64Index([358500.0, 358750.0, 359000.0, 359250.0, 359500.0, 359750.0,\n 360000.0, 360250.0, 360500.0, 360750.0,\n ...\n 501250.0, 501500.0, 501750.0, 502000.0, 502250.0, 502500.0,\n 502750.0, 503000.0, 503250.0, 503500.0],\n dtype='float64', name='x', length=581))yPandasIndexPandasIndex(Float64Index([9357750.0, 9358000.0, 9358250.0, 9358500.0, 9358750.0, 9359000.0,\n 9359250.0, 9359500.0, 9359750.0, 9360000.0,\n ...\n 9500750.0, 9501000.0, 9501250.0, 9501500.0, 9501750.0, 9502000.0,\n 9502250.0, 9502500.0, 9502750.0, 9503000.0],\n dtype='float64', name='y', length=582))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2023-11-30T07:08:40Z : Creationplatform :SWOTreferences :V1.1.1reference_document :JPL D-56416 - Revision B - August 17, 2023contact :alexander.t.corben[at]jpl.nasa.govcycle_number :7pass_number :55scene_number :73tile_numbers :[144 145 146 147 144 145 146 147]tile_names :055_144L, 055_145L, 055_146L, 055_147L, 055_144R, 055_145R, 055_146R, 055_147Rtile_polarizations :V, V, V, V, H, H, H, Hcoordinate_reference_system :Universal Transverse Mercatorresolution :250.0short_name :L2_HR_Rasterdescriptor_string :250m_UTM34M_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.0.4time_granule_start :2023-11-25T08:46:30.064537Ztime_granule_end :2023-11-25T08:46:51.150152Ztime_coverage_start :2023-11-25T08:46:30.594559Ztime_coverage_end :2023-11-25T08:46:50.620738Zgeospatial_lon_min :19.72141518983517geospatial_lon_max :21.03225044891599geospatial_lat_min :-5.810602992908104geospatial_lat_max :-4.4965880080449185left_first_longitude :19.72141518983517left_first_latitude :-5.641311173698941left_last_longitude :19.891062484099912left_last_latitude :-4.496588008044919right_first_longitude :20.86456012740915right_first_latitude :-5.810602992908102right_last_longitude :21.032250448915992right_last_latitude :-4.665287517098692xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_007_055_144L_20231125T084620_20231125T084631_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_145L_20231125T084630_20231125T084641_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_146L_20231125T084640_20231125T084651_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_147L_20231125T084650_20231125T084701_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_144R_20231125T084620_20231125T084631_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_145R_20231125T084630_20231125T084641_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_146R_20231125T084640_20231125T084651_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_147R_20231125T084650_20231125T084701_PIC0_02.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_007_055_144L_20231125T084620_20231125T084631_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_145L_20231125T084630_20231125T084641_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_146L_20231125T084640_20231125T084651_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_147L_20231125T084650_20231125T084701_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_144R_20231125T084620_20231125T084631_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_145R_20231125T084630_20231125T084641_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_146R_20231125T084640_20231125T084651_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_147R_20231125T084650_20231125T084701_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :34mgrs_latitude_band :Mx_min :358500.0x_max :503500.0y_min :9357750.0y_max :9503000.0institution :CNESproduct_version :01" + "text": "Accessing Data in the Cloud (skip this chunk if local)\nThis code chunk will only work if you are running this script in the cloud, AWS us-west-2 region.\n\n#access data within the cloud and open into an xarray dataset\nds_SWOT_raster = xr.open_mfdataset(earthaccess.open([results[0]]), engine=\"h5netcdf\")\nds_SWOT_raster\n\nOpening 1 granules, approx size: 0.01 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (x: 581, y: 582)\nCoordinates:\n * x (x) float64 3.585e+05 3.588e+05 ... 5.035e+05\n * y (y) float64 9.358e+06 9.358e+06 ... 9.503e+06\nData variables: (12/39)\n crs object ...\n longitude (y, x) float64 dask.array<chunksize=(582, 581), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(582, 581), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(582, 581), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(582, 581), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2023-11-30T07:08:40Z : Creation\n platform: SWOT\n references: V1.1.1\n ... ...\n x_min: 358500.0\n x_max: 503500.0\n y_min: 9357750.0\n y_max: 9503000.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:x: 581y: 582Coordinates: (2)x(x)float643.585e+05 3.588e+05 ... 5.035e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([358500., 358750., 359000., ..., 503000., 503250., 503500.])y(y)float649.358e+06 9.358e+06 ... 9.503e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([9357750., 9358000., 9358250., ..., 9502500., 9502750., 9503000.])Data variables: (39)crs()object...long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 34Sgeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :10000000.0longitude_of_central_meridian :21.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 34S\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",21],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",10000000],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32734\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 34S\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",21],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",10000000],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32734\"]]comment :UTM zone coordinate reference system.[1 values with dtype=object]longitude(y, x)float64dask.array<chunksize=(582, 581), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded low_coherence_water_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 2097152 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4046221478\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044124590\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044255655\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.71 MB\n2.71 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(582, 581), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.35 MB\n1.35 MB\n\n\nShape\n(582, 581)\n(582, 581)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 581 582\n\n\n\n\n\nIndexes: (2)xPandasIndexPandasIndex(Float64Index([358500.0, 358750.0, 359000.0, 359250.0, 359500.0, 359750.0,\n 360000.0, 360250.0, 360500.0, 360750.0,\n ...\n 501250.0, 501500.0, 501750.0, 502000.0, 502250.0, 502500.0,\n 502750.0, 503000.0, 503250.0, 503500.0],\n dtype='float64', name='x', length=581))yPandasIndexPandasIndex(Float64Index([9357750.0, 9358000.0, 9358250.0, 9358500.0, 9358750.0, 9359000.0,\n 9359250.0, 9359500.0, 9359750.0, 9360000.0,\n ...\n 9500750.0, 9501000.0, 9501250.0, 9501500.0, 9501750.0, 9502000.0,\n 9502250.0, 9502500.0, 9502750.0, 9503000.0],\n dtype='float64', name='y', length=582))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2023-11-30T07:08:40Z : Creationplatform :SWOTreferences :V1.1.1reference_document :JPL D-56416 - Revision B - August 17, 2023contact :alexander.t.corben[at]jpl.nasa.govcycle_number :7pass_number :55scene_number :73tile_numbers :[144 145 146 147 144 145 146 147]tile_names :055_144L, 055_145L, 055_146L, 055_147L, 055_144R, 055_145R, 055_146R, 055_147Rtile_polarizations :V, V, V, V, H, H, H, Hcoordinate_reference_system :Universal Transverse Mercatorresolution :250.0short_name :L2_HR_Rasterdescriptor_string :250m_UTM34M_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.0.4time_granule_start :2023-11-25T08:46:30.064537Ztime_granule_end :2023-11-25T08:46:51.150152Ztime_coverage_start :2023-11-25T08:46:30.594559Ztime_coverage_end :2023-11-25T08:46:50.620738Zgeospatial_lon_min :19.72141518983517geospatial_lon_max :21.03225044891599geospatial_lat_min :-5.810602992908104geospatial_lat_max :-4.4965880080449185left_first_longitude :19.72141518983517left_first_latitude :-5.641311173698941left_last_longitude :19.891062484099912left_last_latitude :-4.496588008044919right_first_longitude :20.86456012740915right_first_latitude :-5.810602992908102right_last_longitude :21.032250448915992right_last_latitude :-4.665287517098692xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_007_055_144L_20231125T084620_20231125T084631_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_145L_20231125T084630_20231125T084641_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_146L_20231125T084640_20231125T084651_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_147L_20231125T084650_20231125T084701_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_144R_20231125T084620_20231125T084631_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_145R_20231125T084630_20231125T084641_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_146R_20231125T084640_20231125T084651_PIC0_02.nc, SWOT_L2_HR_PIXC_007_055_147R_20231125T084650_20231125T084701_PIC0_02.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_007_055_144L_20231125T084620_20231125T084631_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_145L_20231125T084630_20231125T084641_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_146L_20231125T084640_20231125T084651_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_147L_20231125T084650_20231125T084701_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_144R_20231125T084620_20231125T084631_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_145R_20231125T084630_20231125T084641_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_146R_20231125T084640_20231125T084651_PIC0_01.nc, SWOT_L2_HR_PIXCVec_007_055_147R_20231125T084650_20231125T084701_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :34mgrs_latitude_band :Mx_min :358500.0x_max :503500.0y_min :9357750.0y_max :9503000.0institution :CNESproduct_version :01" }, { "objectID": "notebooks/SWORD_River_Demo.html#downloading-data-on-a-local-machine", "href": "notebooks/SWORD_River_Demo.html#downloading-data-on-a-local-machine", "title": "SWORD River Demo", "section": "Downloading Data on a Local Machine", - "text": "Downloading Data on a Local Machine\n\n#download data into folder on local machine\nearthaccess.download([results[0]], \"datasets/data_downloads\")\n\n Getting 1 granules, approx download size: 0.01 GB\n\n\n\n\n\n\n\n\n\n\n\n['datasets\\\\data_downloads\\\\SWOT_L2_HR_Raster_250m_UTM34M_N_x_x_x_007_055_073F_20231125T084630_20231125T084651_PIC0_01.nc']\n\n\n\n#open dataset for visualization\nds_SWOT_raster = xr.open_mfdataset(f'datasets/data_downloads/SWOT_L2_HR_Raster*', engine='h5netcdf')\nds_SWOT_raster\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (x: 1920, y: 2101)\nCoordinates:\n * x (x) float64 2.969e+05 2.97e+05 ... 5.035e+05\n * y (y) float64 4.274e+06 4.274e+06 ... 9.503e+06\nData variables: (12/39)\n crs (y, x) object b'1' b'1' b'1' ... b'1' b'1' b'1'\n longitude (y, x) float64 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2023-12-03T08:26:57Z : Creation\n platform: SWOT\n references: V1.1.1\n ... ...\n x_min: 296900.0\n x_max: 448800.0\n y_min: 4274000.0\n y_max: 4425800.0\n institution: CNES\n product_version: 04xarray.DatasetDimensions:x: 1920y: 2101Coordinates: (2)x(x)float642.969e+05 2.97e+05 ... 5.035e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([296900., 297000., 297100., ..., 503000., 503250., 503500.])y(y)float644.274e+06 4.274e+06 ... 9.503e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([4274000., 4274100., 4274200., ..., 9502500., 9502750., 9503000.])Data variables: (39)crs(y, x)objectb'1' b'1' b'1' ... b'1' b'1' b'1'long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 13Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-105.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 13N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-105],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32613\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 13N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-105],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32613\"]]comment :UTM zone coordinate reference system.array([[b'1', b'1', b'1', ..., nan, nan, nan],\n [b'1', b'1', b'1', ..., nan, nan, nan],\n [b'1', b'1', b'1', ..., nan, nan, nan],\n ...,\n [nan, nan, nan, ..., b'1', b'1', b'1'],\n [nan, nan, nan, ..., b'1', b'1', b'1'],\n [nan, nan, nan, ..., b'1', b'1', b'1']], dtype=object)longitude(y, x)float64dask.array<chunksize=(1519, 1920), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded low_coherence_water_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 2097152 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4046221478\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044124590\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044255655\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\nIndexes: (2)xPandasIndexPandasIndex(Float64Index([296900.0, 297000.0, 297100.0, 297200.0, 297300.0, 297400.0,\n 297500.0, 297600.0, 297700.0, 297800.0,\n ...\n 501250.0, 501500.0, 501750.0, 502000.0, 502250.0, 502500.0,\n 502750.0, 503000.0, 503250.0, 503500.0],\n dtype='float64', name='x', length=1920))yPandasIndexPandasIndex(Float64Index([4274000.0, 4274100.0, 4274200.0, 4274300.0, 4274400.0, 4274500.0,\n 4274600.0, 4274700.0, 4274800.0, 4274900.0,\n ...\n 9500750.0, 9501000.0, 9501250.0, 9501500.0, 9501750.0, 9502000.0,\n 9502250.0, 9502500.0, 9502750.0, 9503000.0],\n dtype='float64', name='y', length=2101))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2023-12-03T08:26:57Z : Creationplatform :SWOTreferences :V1.1.1reference_document :JPL D-56416 - Revision B - August 17, 2023contact :alexander.t.corben[at]jpl.nasa.govcycle_number :7pass_number :106scene_number :43tile_numbers :[84 85 86 87 84 85 86 87]tile_names :106_084L, 106_085L, 106_086L, 106_087L, 106_084R, 106_085R, 106_086R, 106_087Rtile_polarizations :V, V, V, V, H, H, H, Hcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM13S_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.0.4time_granule_start :2023-11-27T04:20:14.437610Ztime_granule_end :2023-11-27T04:20:35.534188Ztime_coverage_start :2023-11-27T04:20:14.980558Ztime_coverage_end :2023-11-27T04:20:34.994509Zgeospatial_lon_min :-107.36911163124995geospatial_lon_max :-105.59017452334454geospatial_lat_min :38.59680331004279geospatial_lat_max :39.97894754823607left_first_longitude :-105.91254270086569left_first_latitude :39.97894754823607left_last_longitude :-105.59017452334454left_last_latitude :38.852446680067644right_first_longitude :-107.36911163124995right_first_latitude :39.71714302692733right_last_longitude :-107.02548126593867right_last_latitude :38.59680331004279xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_007_106_084L_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085L_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086L_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087L_20231127T042034_20231127T042045_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_084R_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085R_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087R_20231127T042034_20231127T042045_PIC0_03.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_007_106_084L_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085L_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_084R_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085R_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_087R_20231127T042034_20231127T042045_PIC0_04.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :13mgrs_latitude_band :Sx_min :296900.0x_max :448800.0y_min :4274000.0y_max :4425800.0institution :CNESproduct_version :04\n\n\n\n… Continue to Science!" + "text": "Downloading Data on a Local Machine\n\n#download data into folder on local machine\nearthaccess.download([results[0]], \"datasets/data_downloads\")\n\n Getting 1 granules, approx download size: 0.01 GB\n\n\n\n\n\n\n\n\n\n\n\n['datasets\\\\data_downloads\\\\SWOT_L2_HR_Raster_250m_UTM34M_N_x_x_x_007_055_073F_20231125T084630_20231125T084651_PIC0_01.nc']\n\n\n\n#open dataset for visualization\nds_SWOT_raster = xr.open_mfdataset(f'datasets/data_downloads/SWOT_L2_HR_Raster*', engine='h5netcdf')\nds_SWOT_raster\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (x: 1920, y: 2101)\nCoordinates:\n * x (x) float64 2.969e+05 2.97e+05 ... 5.035e+05\n * y (y) float64 4.274e+06 4.274e+06 ... 9.503e+06\nData variables: (12/39)\n crs (y, x) object b'1' b'1' b'1' ... b'1' b'1' b'1'\n longitude (y, x) float64 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(1519, 1920), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2023-12-03T08:26:57Z : Creation\n platform: SWOT\n references: V1.1.1\n ... ...\n x_min: 296900.0\n x_max: 448800.0\n y_min: 4274000.0\n y_max: 4425800.0\n institution: CNES\n product_version: 04xarray.DatasetDimensions:x: 1920y: 2101Coordinates: (2)x(x)float642.969e+05 2.97e+05 ... 5.035e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([296900., 297000., 297100., ..., 503000., 503250., 503500.])y(y)float644.274e+06 4.274e+06 ... 9.503e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([4274000., 4274100., 4274200., ..., 9502500., 9502750., 9503000.])Data variables: (39)crs(y, x)objectb'1' b'1' b'1' ... b'1' b'1' b'1'long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 13Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-105.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 13N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-105],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32613\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 13N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-105],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32613\"]]comment :UTM zone coordinate reference system.array([[b'1', b'1', b'1', ..., nan, nan, nan],\n [b'1', b'1', b'1', ..., nan, nan, nan],\n [b'1', b'1', b'1', ..., nan, nan, nan],\n ...,\n [nan, nan, nan, ..., b'1', b'1', b'1'],\n [nan, nan, nan, ..., b'1', b'1', b'1'],\n [nan, nan, nan, ..., b'1', b'1', b'1']], dtype=object)longitude(y, x)float64dask.array<chunksize=(1519, 1920), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded low_coherence_water_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 2097152 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4046221478\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044124590\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4044255655\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.27 MB\n23.33 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1519, 1920), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n16.14 MB\n11.67 MB\n\n\nShape\n(2101, 1920)\n(1519, 1920)\n\n\nCount\n22 Tasks\n2 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 1920 2101\n\n\n\n\n\nIndexes: (2)xPandasIndexPandasIndex(Float64Index([296900.0, 297000.0, 297100.0, 297200.0, 297300.0, 297400.0,\n 297500.0, 297600.0, 297700.0, 297800.0,\n ...\n 501250.0, 501500.0, 501750.0, 502000.0, 502250.0, 502500.0,\n 502750.0, 503000.0, 503250.0, 503500.0],\n dtype='float64', name='x', length=1920))yPandasIndexPandasIndex(Float64Index([4274000.0, 4274100.0, 4274200.0, 4274300.0, 4274400.0, 4274500.0,\n 4274600.0, 4274700.0, 4274800.0, 4274900.0,\n ...\n 9500750.0, 9501000.0, 9501250.0, 9501500.0, 9501750.0, 9502000.0,\n 9502250.0, 9502500.0, 9502750.0, 9503000.0],\n dtype='float64', name='y', length=2101))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2023-12-03T08:26:57Z : Creationplatform :SWOTreferences :V1.1.1reference_document :JPL D-56416 - Revision B - August 17, 2023contact :alexander.t.corben[at]jpl.nasa.govcycle_number :7pass_number :106scene_number :43tile_numbers :[84 85 86 87 84 85 86 87]tile_names :106_084L, 106_085L, 106_086L, 106_087L, 106_084R, 106_085R, 106_086R, 106_087Rtile_polarizations :V, V, V, V, H, H, H, Hcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM13S_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.0.4time_granule_start :2023-11-27T04:20:14.437610Ztime_granule_end :2023-11-27T04:20:35.534188Ztime_coverage_start :2023-11-27T04:20:14.980558Ztime_coverage_end :2023-11-27T04:20:34.994509Zgeospatial_lon_min :-107.36911163124995geospatial_lon_max :-105.59017452334454geospatial_lat_min :38.59680331004279geospatial_lat_max :39.97894754823607left_first_longitude :-105.91254270086569left_first_latitude :39.97894754823607left_last_longitude :-105.59017452334454left_last_latitude :38.852446680067644right_first_longitude :-107.36911163124995right_first_latitude :39.71714302692733right_last_longitude :-107.02548126593867right_last_latitude :38.59680331004279xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_007_106_084L_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085L_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086L_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087L_20231127T042034_20231127T042045_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_084R_20231127T042004_20231127T042015_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_085R_20231127T042014_20231127T042025_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc, SWOT_L2_HR_PIXC_007_106_087R_20231127T042034_20231127T042045_PIC0_03.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_007_106_084L_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085L_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_084R_20231127T042004_20231127T042015_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_085R_20231127T042014_20231127T042025_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_086R_20231127T042024_20231127T042035_PIC0_04.nc, SWOT_L2_HR_PIXCVec_007_106_087R_20231127T042034_20231127T042045_PIC0_04.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :13mgrs_latitude_band :Sx_min :296900.0x_max :448800.0y_min :4274000.0y_max :4425800.0institution :CNESproduct_version :04\n\n\n… Continue to Science!" }, { "objectID": "notebooks/SWORD_River_Demo.html#other-options-to-query-the-sword-database", @@ -1528,7 +1528,7 @@ "href": "notebooks/aws_lambda_sst/podaac-lambda-invoke-sst-global-mean.html#step-3-plot-results-as-timeseries", "title": "Scale Scientific Analysis in the Cloud with AWS Lambda", "section": "Step 3: Plot results as timeseries", - "text": "Step 3: Plot results as timeseries\nOpen the resulting global mean files in xarray:\n\n# set up the connection to the S3 bucket holding the results\ns3_results = s3fs.S3FileSystem(\n anon=False,\n profile='saml-pub'\n)\n\ns3_files = s3_results.glob(\"s3://\" + s3_results_bucket + \"/MUR25/*\")\n\n\n# iterate through s3 files to create a fileset\nfileset = [s3_results.open(file) for file in s3_files]\n\n\n\n# open all files as an xarray dataset\ndata = xr.open_mfdataset(fileset, combine='by_coords', engine='scipy')\n\n\ndata\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 365)\nCoordinates:\n * time (time) datetime64[ns] 2022-01-01T09:00:00 ... 2023-01-01T09...\nData variables:\n analysed_sst (time) float64 dask.array<chunksize=(1,), meta=np.ndarray>xarray.DatasetDimensions:time: 365Coordinates: (1)time(time)datetime64[ns]2022-01-01T09:00:00 ... 2023-01-...array(['2022-01-01T09:00:00.000000000', '2022-01-02T09:00:00.000000000',\n '2022-01-03T09:00:00.000000000', ..., '2022-12-30T09:00:00.000000000',\n '2022-12-31T09:00:00.000000000', '2023-01-01T09:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (1)analysed_sst(time)float64dask.array<chunksize=(1,), meta=np.ndarray>description :Area-weighted global mean sea surface temperature calculated using AWS Lambdaunits :celciusdate_created :Jun-06-2023\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.85 kiB\n8 B\n\n\nShape\n(365,)\n(1,)\n\n\nDask graph\n365 chunks in 731 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 365 1\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(DatetimeIndex(['2022-01-01 09:00:00', '2022-01-02 09:00:00',\n '2022-01-03 09:00:00', '2022-01-04 09:00:00',\n '2022-01-05 09:00:00', '2022-01-06 09:00:00',\n '2022-01-07 09:00:00', '2022-01-08 09:00:00',\n '2022-01-09 09:00:00', '2022-01-10 09:00:00',\n ...\n '2022-12-23 09:00:00', '2022-12-24 09:00:00',\n '2022-12-25 09:00:00', '2022-12-26 09:00:00',\n '2022-12-27 09:00:00', '2022-12-28 09:00:00',\n '2022-12-29 09:00:00', '2022-12-30 09:00:00',\n '2022-12-31 09:00:00', '2023-01-01 09:00:00'],\n dtype='datetime64[ns]', name='time', length=365, freq=None))Attributes: (0)\n\n\n\nPlot the data using matplotlib:\n\nmpl.rcParams.update({'font.size': 22})\n\n# set up the figure\nfig = plt.Figure(figsize=(20,5))\n\n# plot the data\nplt.plot(data.time, data.analysed_sst, linewidth='3')\nplt.title('Global Mean Sea Surface Temperature' + '\\n' + '2022, MUR25')\n\nplt.ylabel('degrees C')\nplt.xlabel('Date')\n\nText(0.5, 0, 'Date')", + "text": "Step 3: Plot results as timeseries\nOpen the resulting global mean files in xarray:\n\n# set up the connection to the S3 bucket holding the results\ns3_results = s3fs.S3FileSystem(\n anon=False,\n profile='saml-pub'\n)\n\ns3_files = s3_results.glob(\"s3://\" + s3_results_bucket + \"/MUR25/*\")\n\n\n# iterate through s3 files to create a fileset\nfileset = [s3_results.open(file) for file in s3_files]\n\n\n\n# open all files as an xarray dataset\ndata = xr.open_mfdataset(fileset, combine='by_coords', engine='scipy')\n\n\ndata\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 365)\nCoordinates:\n * time (time) datetime64[ns] 2022-01-01T09:00:00 ... 2023-01-01T09...\nData variables:\n analysed_sst (time) float64 dask.array<chunksize=(1,), meta=np.ndarray>xarray.DatasetDimensions:time: 365Coordinates: (1)time(time)datetime64[ns]2022-01-01T09:00:00 ... 2023-01-...array(['2022-01-01T09:00:00.000000000', '2022-01-02T09:00:00.000000000',\n '2022-01-03T09:00:00.000000000', ..., '2022-12-30T09:00:00.000000000',\n '2022-12-31T09:00:00.000000000', '2023-01-01T09:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (1)analysed_sst(time)float64dask.array<chunksize=(1,), meta=np.ndarray>description :Area-weighted global mean sea surface temperature calculated using AWS Lambdaunits :celciusdate_created :Jun-06-2023\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.85 kiB\n8 B\n\n\nShape\n(365,)\n(1,)\n\n\nDask graph\n365 chunks in 731 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 365 1\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(DatetimeIndex(['2022-01-01 09:00:00', '2022-01-02 09:00:00',\n '2022-01-03 09:00:00', '2022-01-04 09:00:00',\n '2022-01-05 09:00:00', '2022-01-06 09:00:00',\n '2022-01-07 09:00:00', '2022-01-08 09:00:00',\n '2022-01-09 09:00:00', '2022-01-10 09:00:00',\n ...\n '2022-12-23 09:00:00', '2022-12-24 09:00:00',\n '2022-12-25 09:00:00', '2022-12-26 09:00:00',\n '2022-12-27 09:00:00', '2022-12-28 09:00:00',\n '2022-12-29 09:00:00', '2022-12-30 09:00:00',\n '2022-12-31 09:00:00', '2023-01-01 09:00:00'],\n dtype='datetime64[ns]', name='time', length=365, freq=None))Attributes: (0)\n\n\nPlot the data using matplotlib:\n\nmpl.rcParams.update({'font.size': 22})\n\n# set up the figure\nfig = plt.Figure(figsize=(20,5))\n\n# plot the data\nplt.plot(data.time, data.analysed_sst, linewidth='3')\nplt.title('Global Mean Sea Surface Temperature' + '\\n' + '2022, MUR25')\n\nplt.ylabel('degrees C')\nplt.xlabel('Date')\n\nText(0.5, 0, 'Date')", "crumbs": [ "Advanced Cloud", "AWS Lambda", @@ -1826,7 +1826,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html#liquid-water-equivalent-lwe-thickness-grace-grace-fo", "title": "Amazon Estuary Exploration:", "section": "Liquid Water Equivalent (LWE) Thickness (GRACE & GRACE-FO)", - "text": "Liquid Water Equivalent (LWE) Thickness (GRACE & GRACE-FO)\n\nSearch for GRACE LWE Thickness data\nSuppose we are interested in LWE data from the dataset (DOI:10.5067/TEMSC-3JC62) described on this PO.DAAC dataset landing page: https://podaac.jpl.nasa.gov/dataset/TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3\nFrom the landing page, we see the dataset Short Name under the Information tab. (For this dataset it is “TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3”) We will be using this to search for the necessary granules.\n\n#earthaccess search\ngrace_results = earthaccess.search_data(short_name=\"TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3\")\n\nGranules found: 1\n\n\n\n#download data into folder on local machine\nearthaccess.download(grace_results, \"./grace_data\")\n\n Getting 1 granules, approx download size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n['GRCTellus.JPL.200204_202303.GLO.RL06.1M.MSCNv03CRI.nc']\n\n\n\n\nOpen file using xarray.\n\n#open dataset for visualization\nds_GRACE = xr.open_mfdataset(\"./grace_data/GRCTellus.JPL.200204_202303.GLO.RL06.1M.MSCNv03CRI.nc\", engine=\"h5netcdf\")\nds_GRACE\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (lon: 720, lat: 360, time: 219, bounds: 2)\nCoordinates:\n * lon (lon) float64 0.25 0.75 1.25 1.75 ... 358.2 358.8 359.2 359.8\n * lat (lat) float64 -89.75 -89.25 -88.75 ... 88.75 89.25 89.75\n * time (time) datetime64[ns] 2002-04-17T12:00:00 ... 2023-03-16T1...\nDimensions without coordinates: bounds\nData variables:\n lwe_thickness (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n uncertainty (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n lat_bounds (lat, bounds) float64 dask.array<chunksize=(360, 2), meta=np.ndarray>\n lon_bounds (lon, bounds) float64 dask.array<chunksize=(720, 2), meta=np.ndarray>\n time_bounds (time, bounds) datetime64[ns] dask.array<chunksize=(219, 2), meta=np.ndarray>\n land_mask (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n scale_factor (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n mascon_ID (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\nAttributes: (12/53)\n Conventions: CF-1.6, ACDD-1.3, ISO 8601\n Metadata_Conventions: Unidata Dataset Discovery v1.0\n standard_name_vocabulary: NetCDF Climate and Forecast (CF) Metadata ...\n title: JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRI\n summary: Monthly gravity solutions from GRACE and G...\n keywords: Solid Earth, Geodetics/Gravity, Gravity, l...\n ... ...\n C_30_substitution: TN-14; Loomis et al., 2019, Geophys. Res. ...\n user_note_1: The accelerometer on the GRACE-B spacecraf...\n user_note_2: The accelerometer on the GRACE-D spacecraf...\n journal_reference: Watkins, M. M., D. N. Wiese, D.-N. Yuan, C...\n CRI_filter_journal_reference: Wiese, D. N., F. W. Landerer, and M. M. Wa...\n date_created: 2023-05-22T06:05:03Zxarray.DatasetDimensions:lon: 720lat: 360time: 219bounds: 2Coordinates: (3)lon(lon)float640.25 0.75 1.25 ... 359.2 359.8units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :Xvalid_min :0.25valid_max :359.75bounds :lon_boundsarray([2.5000e-01, 7.5000e-01, 1.2500e+00, ..., 3.5875e+02, 3.5925e+02,\n 3.5975e+02])lat(lat)float64-89.75 -89.25 ... 89.25 89.75units :degrees_northlong_name :latitudestandard_name :latitudeaxis :Yvalid_min :-89.75valid_max :89.75bounds :lat_boundsarray([-89.75, -89.25, -88.75, ..., 88.75, 89.25, 89.75])time(time)datetime64[ns]2002-04-17T12:00:00 ... 2023-03-...long_name :timestandard_name :timeaxis :Tbounds :time_boundsarray(['2002-04-17T12:00:00.000000000', '2002-05-10T12:00:00.000000000',\n '2002-08-16T12:00:00.000000000', ..., '2023-01-16T12:00:00.000000000',\n '2023-02-15T00:00:00.000000000', '2023-03-16T12:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (8)lwe_thickness(time, lat, lon)float64dask.array<chunksize=(219, 360, 720), meta=np.ndarray>units :cmlong_name :Liquid_Water_Equivalent_Thicknessstandard_name :Liquid_Water_Equivalent_Thicknessgrid_mapping :WGS84valid_min :-1986.9763606523888valid_max :965.4782725418918comment :Coastline Resolution Improvement (CRI) filter is applied\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nuncertainty\n\n\n(time, lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ncm\n\nlong_name :\n\nuncertainty\n\nstandard_name :\n\nuncertainty\n\ngrid_mapping :\n\nWGS84\n\nvalid_min :\n\n0.15854006805783352\n\nvalid_max :\n\n53.34469598560085\n\ncomment :\n\n1-sigma uncertainty: not for each 0.5 degree grid cell, but for each 3-degree mascon estimate\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nlat_bounds\n\n\n(lat, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude boundaries\n\nunits :\n\ndegrees_north\n\ncomment :\n\nlatitude values at the north and south bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.62 kiB\n5.62 kiB\n\n\nShape\n(360, 2)\n(360, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2 360\n\n\n\n\n\n\n\n\nlon_bounds\n\n\n(lon, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(720, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude boundaries\n\nunits :\n\ndegrees_east\n\ncomment :\n\nlongitude values at the west and east bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.25 kiB\n11.25 kiB\n\n\nShape\n(720, 2)\n(720, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2 720\n\n\n\n\n\n\n\n\ntime_bounds\n\n\n(time, bounds)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(219, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime boundaries\n\ncomment :\n\ntime bounds for each time value, i.e. the first day and last day included in the monthly solution\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.42 kiB\n3.42 kiB\n\n\nShape\n(219, 2)\n(219, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2 219\n\n\n\n\n\n\n\n\nland_mask\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nbinary\n\nlong_name :\n\nLand_Mask\n\nstandard_name :\n\nLand_Mask\n\ndescription :\n\nLand Mask that was used with the CRI filter\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nscale_factor\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nScale_Factor_CRI\n\nstandard_name :\n\nScale_Factor_CRI\n\nvalid_min :\n\n-99999.0\n\nvalid_max :\n\n24.133988467789724\n\ndescription :\n\nGridded scale factors to be used with mascon solution that has the CRI filter applied; based on CLM data from 2002-2009\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nmascon_ID\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nMascon_Identifier\n\nstandard_name :\n\nMascon_ID\n\nvalid_min :\n\n1\n\nvalid_max :\n\n4551\n\ndescription :\n\nMascon identifier mapped to the grid\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\nIndexes: (3)lonPandasIndexPandasIndex(Float64Index([ 0.25, 0.75, 1.25, 1.75, 2.25, 2.75, 3.25, 3.75,\n 4.25, 4.75,\n ...\n 355.25, 355.75, 356.25, 356.75, 357.25, 357.75, 358.25, 358.75,\n 359.25, 359.75],\n dtype='float64', name='lon', length=720))latPandasIndexPandasIndex(Float64Index([-89.75, -89.25, -88.75, -88.25, -87.75, -87.25, -86.75, -86.25,\n -85.75, -85.25,\n ...\n 85.25, 85.75, 86.25, 86.75, 87.25, 87.75, 88.25, 88.75,\n 89.25, 89.75],\n dtype='float64', name='lat', length=360))timePandasIndexPandasIndex(DatetimeIndex(['2002-04-17 12:00:00', '2002-05-10 12:00:00',\n '2002-08-16 12:00:00', '2002-09-16 00:00:00',\n '2002-10-16 12:00:00', '2002-11-16 00:00:00',\n '2002-12-16 12:00:00', '2003-01-16 12:00:00',\n '2003-02-15 00:00:00', '2003-03-16 12:00:00',\n ...\n '2022-06-16 00:00:00', '2022-07-16 12:00:00',\n '2022-08-16 12:00:00', '2022-09-16 00:00:00',\n '2022-10-16 12:00:00', '2022-11-16 00:00:00',\n '2022-12-16 12:00:00', '2023-01-16 12:00:00',\n '2023-02-15 00:00:00', '2023-03-16 12:00:00'],\n dtype='datetime64[ns]', name='time', length=219, freq=None))Attributes: (53)Conventions :CF-1.6, ACDD-1.3, ISO 8601Metadata_Conventions :Unidata Dataset Discovery v1.0standard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Convention-1.6title :JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRIsummary :Monthly gravity solutions from GRACE and GRACE-FO as determined from the JPL RL06.1Mv03 mascon solution - with CRI filter appliedkeywords :Solid Earth, Geodetics/Gravity, Gravity, liquid_water_equivalent_thicknesskeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsplatform :GRACE and GRACE-FOinstitution :NASA/JPLcreator_name :David Wiesecreator_email :grace@podaac.jpl.nasa.govcreator_url :https://grace.jpl.nasa.govcreator_type :groupcreator_institution :NASA/JPLpublisher_name :Physical Oceanography Distributed Active Archive Centerpublisher_email :podaac@jpl.nasa.govpublisher_url :https://podaac.jpl.nasa.govpublisher_type :grouppublisher_institution :NASA/JPLproject :NASA Gravity Recovery and Climate Experiment (GRACE) and NASA Gravity Recovery and Climate Experiment Follow-On (GRACE-FO)program :NASA Earth Science System Pathfinder and NASA Earth Systematic Missions Programid :10.5067/TEMSC-3JC62naming_authority :org.doi.dxsource :GRACE and GRACE-FO JPL RL06.1Mv03-CRIprocessing_level :2 and 3acknowledgement :GRACE is a joint mission of NASA (USA) and DLR (Germany). GRACE-FO is a joint mission of NASA (USA) and the German Research Center for Geosciences (GFZ). Use the digital object identifier provided in the id attribute when citing this data. See https://podaac.jpl.nasa.gov/CitingPODAAClicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policyproduct_version :v3.0time_epoch :2002-01-01T00:00:00Ztime_coverage_start :2002-04-16T00:00:00Ztime_coverage_end :2023-03-16T23:59:59Zgeospatial_lat_min :-89.75geospatial_lat_max :89.75geospatial_lat_units :degrees_northgeospatial_lat_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconsgeospatial_lon_min :0.25geospatial_lon_max :359.75geospatial_lon_units :degrees_eastgeospatial_lon_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconstime_mean_removed :2004.000 to 2009.999months_missing :2002-06;2002-07;2003-06;2011-01;2011-06;2012-05;2012-10;2013-03;2013-08;2013-09;2014-02;2014-07;2014-12;2015-06;2015-10;2015-11;2016-04;2016-09;2016-10;2017-02;2017-07;2017-08;2017-09;2017-10;2017-11;2017-12;2018-01;2018-02;2018-03;2018-04;2018-05;2018-08-2018-09postprocess_1 : OCEAN_ATMOSPHERE_DEALIAS_MODEL (GAD), MONTHLY_AVE, ADDED BACK TO OCEAN PIXELS ONLYpostprocess_2 :Water density used to convert to equivalent water height: 1000 kg/m^3postprocess_3 :Coastline Resolution Improvement (CRI) filter has been applied to separate land/ocean mass within mascons that span coastlinesGIA_removed :ICE6G-D; Peltier, W. R., D. F. Argus, and R. Drummond (2018) Comment on the paper by Purcell et al. 2016 entitled An assessment of ICE-6G_C (VM5a) glacial isostatic adjustment model, J. Geophys. Res. Solid Earth, 122.geocenter_correction :We use a version of TN-13 based on the JPL masconsC_20_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929C_30_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929. This substitution is made for all months after August 2016.user_note_1 :The accelerometer on the GRACE-B spacecraft was turned off after August 2016. After this date, the accelerometer on GRACE-A was used to derive the non-gravitational accelerations acting on GRACE-B using a transplant procedure. This has led to a subsequent degradation in the quality of the gravity fields derived. The uncertainties in this file have been scaled to accomodate this degradation.user_note_2 :The accelerometer on the GRACE-D spacecraft began performing sub-optimally after June 21, 2018. After this date, the accelerometer on GRACE-C is used to derive the non-gravitational accelerations acting on GRACE-D using a transplant procedure. The uncertainties in the file have been scaled to accomodate this degradation using the current best state of knowledge.journal_reference :Watkins, M. M., D. N. Wiese, D.-N. Yuan, C. Boening, and F. W. Landerer (2015) Improved methods for observing Earth's time variable mass distribution with GRACE using spherical cap mascons, J. Geophys. Res., 120, doi:10.1002/2014JB011547. CRI_filter_journal_reference :Wiese, D. N., F. W. Landerer, and M. M. Watkins (2016) Quantifying and reducing leakage errors in the JPL RL05M GRACE mascon solution, Water Resour. Res., 52, doi:10.1002/2016WR019344. date_created :2023-05-22T06:05:03Z", + "text": "Liquid Water Equivalent (LWE) Thickness (GRACE & GRACE-FO)\n\nSearch for GRACE LWE Thickness data\nSuppose we are interested in LWE data from the dataset (DOI:10.5067/TEMSC-3JC62) described on this PO.DAAC dataset landing page: https://podaac.jpl.nasa.gov/dataset/TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3\nFrom the landing page, we see the dataset Short Name under the Information tab. (For this dataset it is “TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3”) We will be using this to search for the necessary granules.\n\n#earthaccess search\ngrace_results = earthaccess.search_data(short_name=\"TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3\")\n\nGranules found: 1\n\n\n\n#download data into folder on local machine\nearthaccess.download(grace_results, \"./grace_data\")\n\n Getting 1 granules, approx download size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n['GRCTellus.JPL.200204_202303.GLO.RL06.1M.MSCNv03CRI.nc']\n\n\n\n\nOpen file using xarray.\n\n#open dataset for visualization\nds_GRACE = xr.open_mfdataset(\"./grace_data/GRCTellus.JPL.200204_202303.GLO.RL06.1M.MSCNv03CRI.nc\", engine=\"h5netcdf\")\nds_GRACE\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (lon: 720, lat: 360, time: 219, bounds: 2)\nCoordinates:\n * lon (lon) float64 0.25 0.75 1.25 1.75 ... 358.2 358.8 359.2 359.8\n * lat (lat) float64 -89.75 -89.25 -88.75 ... 88.75 89.25 89.75\n * time (time) datetime64[ns] 2002-04-17T12:00:00 ... 2023-03-16T1...\nDimensions without coordinates: bounds\nData variables:\n lwe_thickness (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n uncertainty (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n lat_bounds (lat, bounds) float64 dask.array<chunksize=(360, 2), meta=np.ndarray>\n lon_bounds (lon, bounds) float64 dask.array<chunksize=(720, 2), meta=np.ndarray>\n time_bounds (time, bounds) datetime64[ns] dask.array<chunksize=(219, 2), meta=np.ndarray>\n land_mask (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n scale_factor (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n mascon_ID (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\nAttributes: (12/53)\n Conventions: CF-1.6, ACDD-1.3, ISO 8601\n Metadata_Conventions: Unidata Dataset Discovery v1.0\n standard_name_vocabulary: NetCDF Climate and Forecast (CF) Metadata ...\n title: JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRI\n summary: Monthly gravity solutions from GRACE and G...\n keywords: Solid Earth, Geodetics/Gravity, Gravity, l...\n ... ...\n C_30_substitution: TN-14; Loomis et al., 2019, Geophys. Res. ...\n user_note_1: The accelerometer on the GRACE-B spacecraf...\n user_note_2: The accelerometer on the GRACE-D spacecraf...\n journal_reference: Watkins, M. M., D. N. Wiese, D.-N. Yuan, C...\n CRI_filter_journal_reference: Wiese, D. N., F. W. Landerer, and M. M. Wa...\n date_created: 2023-05-22T06:05:03Zxarray.DatasetDimensions:lon: 720lat: 360time: 219bounds: 2Coordinates: (3)lon(lon)float640.25 0.75 1.25 ... 359.2 359.8units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :Xvalid_min :0.25valid_max :359.75bounds :lon_boundsarray([2.5000e-01, 7.5000e-01, 1.2500e+00, ..., 3.5875e+02, 3.5925e+02,\n 3.5975e+02])lat(lat)float64-89.75 -89.25 ... 89.25 89.75units :degrees_northlong_name :latitudestandard_name :latitudeaxis :Yvalid_min :-89.75valid_max :89.75bounds :lat_boundsarray([-89.75, -89.25, -88.75, ..., 88.75, 89.25, 89.75])time(time)datetime64[ns]2002-04-17T12:00:00 ... 2023-03-...long_name :timestandard_name :timeaxis :Tbounds :time_boundsarray(['2002-04-17T12:00:00.000000000', '2002-05-10T12:00:00.000000000',\n '2002-08-16T12:00:00.000000000', ..., '2023-01-16T12:00:00.000000000',\n '2023-02-15T00:00:00.000000000', '2023-03-16T12:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (8)lwe_thickness(time, lat, lon)float64dask.array<chunksize=(219, 360, 720), meta=np.ndarray>units :cmlong_name :Liquid_Water_Equivalent_Thicknessstandard_name :Liquid_Water_Equivalent_Thicknessgrid_mapping :WGS84valid_min :-1986.9763606523888valid_max :965.4782725418918comment :Coastline Resolution Improvement (CRI) filter is applied\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nuncertainty\n\n\n(time, lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ncm\n\nlong_name :\n\nuncertainty\n\nstandard_name :\n\nuncertainty\n\ngrid_mapping :\n\nWGS84\n\nvalid_min :\n\n0.15854006805783352\n\nvalid_max :\n\n53.34469598560085\n\ncomment :\n\n1-sigma uncertainty: not for each 0.5 degree grid cell, but for each 3-degree mascon estimate\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nlat_bounds\n\n\n(lat, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude boundaries\n\nunits :\n\ndegrees_north\n\ncomment :\n\nlatitude values at the north and south bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.62 kiB\n5.62 kiB\n\n\nShape\n(360, 2)\n(360, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2 360\n\n\n\n\n\n\n\n\nlon_bounds\n\n\n(lon, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(720, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude boundaries\n\nunits :\n\ndegrees_east\n\ncomment :\n\nlongitude values at the west and east bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.25 kiB\n11.25 kiB\n\n\nShape\n(720, 2)\n(720, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2 720\n\n\n\n\n\n\n\n\ntime_bounds\n\n\n(time, bounds)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(219, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime boundaries\n\ncomment :\n\ntime bounds for each time value, i.e. the first day and last day included in the monthly solution\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.42 kiB\n3.42 kiB\n\n\nShape\n(219, 2)\n(219, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2 219\n\n\n\n\n\n\n\n\nland_mask\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nbinary\n\nlong_name :\n\nLand_Mask\n\nstandard_name :\n\nLand_Mask\n\ndescription :\n\nLand Mask that was used with the CRI filter\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nscale_factor\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nScale_Factor_CRI\n\nstandard_name :\n\nScale_Factor_CRI\n\nvalid_min :\n\n-99999.0\n\nvalid_max :\n\n24.133988467789724\n\ndescription :\n\nGridded scale factors to be used with mascon solution that has the CRI filter applied; based on CLM data from 2002-2009\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nmascon_ID\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nMascon_Identifier\n\nstandard_name :\n\nMascon_ID\n\nvalid_min :\n\n1\n\nvalid_max :\n\n4551\n\ndescription :\n\nMascon identifier mapped to the grid\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\nIndexes: (3)lonPandasIndexPandasIndex(Float64Index([ 0.25, 0.75, 1.25, 1.75, 2.25, 2.75, 3.25, 3.75,\n 4.25, 4.75,\n ...\n 355.25, 355.75, 356.25, 356.75, 357.25, 357.75, 358.25, 358.75,\n 359.25, 359.75],\n dtype='float64', name='lon', length=720))latPandasIndexPandasIndex(Float64Index([-89.75, -89.25, -88.75, -88.25, -87.75, -87.25, -86.75, -86.25,\n -85.75, -85.25,\n ...\n 85.25, 85.75, 86.25, 86.75, 87.25, 87.75, 88.25, 88.75,\n 89.25, 89.75],\n dtype='float64', name='lat', length=360))timePandasIndexPandasIndex(DatetimeIndex(['2002-04-17 12:00:00', '2002-05-10 12:00:00',\n '2002-08-16 12:00:00', '2002-09-16 00:00:00',\n '2002-10-16 12:00:00', '2002-11-16 00:00:00',\n '2002-12-16 12:00:00', '2003-01-16 12:00:00',\n '2003-02-15 00:00:00', '2003-03-16 12:00:00',\n ...\n '2022-06-16 00:00:00', '2022-07-16 12:00:00',\n '2022-08-16 12:00:00', '2022-09-16 00:00:00',\n '2022-10-16 12:00:00', '2022-11-16 00:00:00',\n '2022-12-16 12:00:00', '2023-01-16 12:00:00',\n '2023-02-15 00:00:00', '2023-03-16 12:00:00'],\n dtype='datetime64[ns]', name='time', length=219, freq=None))Attributes: (53)Conventions :CF-1.6, ACDD-1.3, ISO 8601Metadata_Conventions :Unidata Dataset Discovery v1.0standard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Convention-1.6title :JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRIsummary :Monthly gravity solutions from GRACE and GRACE-FO as determined from the JPL RL06.1Mv03 mascon solution - with CRI filter appliedkeywords :Solid Earth, Geodetics/Gravity, Gravity, liquid_water_equivalent_thicknesskeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsplatform :GRACE and GRACE-FOinstitution :NASA/JPLcreator_name :David Wiesecreator_email :grace@podaac.jpl.nasa.govcreator_url :https://grace.jpl.nasa.govcreator_type :groupcreator_institution :NASA/JPLpublisher_name :Physical Oceanography Distributed Active Archive Centerpublisher_email :podaac@jpl.nasa.govpublisher_url :https://podaac.jpl.nasa.govpublisher_type :grouppublisher_institution :NASA/JPLproject :NASA Gravity Recovery and Climate Experiment (GRACE) and NASA Gravity Recovery and Climate Experiment Follow-On (GRACE-FO)program :NASA Earth Science System Pathfinder and NASA Earth Systematic Missions Programid :10.5067/TEMSC-3JC62naming_authority :org.doi.dxsource :GRACE and GRACE-FO JPL RL06.1Mv03-CRIprocessing_level :2 and 3acknowledgement :GRACE is a joint mission of NASA (USA) and DLR (Germany). GRACE-FO is a joint mission of NASA (USA) and the German Research Center for Geosciences (GFZ). Use the digital object identifier provided in the id attribute when citing this data. See https://podaac.jpl.nasa.gov/CitingPODAAClicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policyproduct_version :v3.0time_epoch :2002-01-01T00:00:00Ztime_coverage_start :2002-04-16T00:00:00Ztime_coverage_end :2023-03-16T23:59:59Zgeospatial_lat_min :-89.75geospatial_lat_max :89.75geospatial_lat_units :degrees_northgeospatial_lat_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconsgeospatial_lon_min :0.25geospatial_lon_max :359.75geospatial_lon_units :degrees_eastgeospatial_lon_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconstime_mean_removed :2004.000 to 2009.999months_missing :2002-06;2002-07;2003-06;2011-01;2011-06;2012-05;2012-10;2013-03;2013-08;2013-09;2014-02;2014-07;2014-12;2015-06;2015-10;2015-11;2016-04;2016-09;2016-10;2017-02;2017-07;2017-08;2017-09;2017-10;2017-11;2017-12;2018-01;2018-02;2018-03;2018-04;2018-05;2018-08-2018-09postprocess_1 : OCEAN_ATMOSPHERE_DEALIAS_MODEL (GAD), MONTHLY_AVE, ADDED BACK TO OCEAN PIXELS ONLYpostprocess_2 :Water density used to convert to equivalent water height: 1000 kg/m^3postprocess_3 :Coastline Resolution Improvement (CRI) filter has been applied to separate land/ocean mass within mascons that span coastlinesGIA_removed :ICE6G-D; Peltier, W. R., D. F. Argus, and R. Drummond (2018) Comment on the paper by Purcell et al. 2016 entitled An assessment of ICE-6G_C (VM5a) glacial isostatic adjustment model, J. Geophys. Res. Solid Earth, 122.geocenter_correction :We use a version of TN-13 based on the JPL masconsC_20_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929C_30_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929. This substitution is made for all months after August 2016.user_note_1 :The accelerometer on the GRACE-B spacecraft was turned off after August 2016. After this date, the accelerometer on GRACE-A was used to derive the non-gravitational accelerations acting on GRACE-B using a transplant procedure. This has led to a subsequent degradation in the quality of the gravity fields derived. The uncertainties in this file have been scaled to accomodate this degradation.user_note_2 :The accelerometer on the GRACE-D spacecraft began performing sub-optimally after June 21, 2018. After this date, the accelerometer on GRACE-C is used to derive the non-gravitational accelerations acting on GRACE-D using a transplant procedure. The uncertainties in the file have been scaled to accomodate this degradation using the current best state of knowledge.journal_reference :Watkins, M. M., D. N. Wiese, D.-N. Yuan, C. Boening, and F. W. Landerer (2015) Improved methods for observing Earth's time variable mass distribution with GRACE using spherical cap mascons, J. Geophys. Res., 120, doi:10.1002/2014JB011547. CRI_filter_journal_reference :Wiese, D. N., F. W. Landerer, and M. M. Watkins (2016) Quantifying and reducing leakage errors in the JPL RL05M GRACE mascon solution, Water Resour. Res., 52, doi:10.1002/2016WR019344. date_created :2023-05-22T06:05:03Z", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -1852,7 +1852,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html#sea-surface-salinity-multi-mission-smap-aquarius-smos", "title": "Amazon Estuary Exploration:", "section": "Sea Surface Salinity (Multi-mission: SMAP, Aquarius, SMOS)", - "text": "Sea Surface Salinity (Multi-mission: SMAP, Aquarius, SMOS)\nThe shortname for this dataset is ‘OISSS_L4_multimission_7day_v1’. This dataset contains hundreds of granules, by using earthaccess search, we access 998 granules.\nSince this dataset has more than 1 granule that we want to open for visualization, we have to establish the full file path in a different way. For the previous datasets, we could list the exact file, but that would be difficult to do with hundreds of granules. Therefore, the extra step to recurse through the directory to access all files.\n\n#earthaccess search\nsss_results = earthaccess.search_data(short_name=\"OISSS_L4_multimission_7day_v1\")\n\nGranules found: 998\n\n\n\n#earthaccess download\nsss_files = earthaccess.download(sss_results, \"./sss_data\")\n\n Getting 998 granules, approx download size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n#ensures that all files are included in the path\nsss_path = [os.path.join(\"./sss_data\", f) \n for pth, dirs, files in os.walk(\"./sss_data\") for f in files]\n\n\nds_sss = xr.open_mfdataset(sss_path,\n combine='by_coords',\n mask_and_scale=True,\n decode_cf=True,\n chunks='auto',\n engine='h5netcdf')\nds_sss\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 1440, latitude: 720, time: 998)\nCoordinates:\n * longitude (longitude) float32 -179.9 -179.6 ... 179.6 179.9\n * latitude (latitude) float32 -89.88 -89.62 ... 89.62 89.88\n * time (time) datetime64[ns] 2011-08-28 ... 2022-08-02\nData variables:\n sss (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_empirical_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n sss_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\nAttributes: (12/42)\n Conventions: CF-1.8, ACDD-1.3\n standard_name_vocabulary: CF Standard Name Table v27\n Title: Multi-Mission Optimally Interpolated Sea S...\n Short_Name: OISSS_L4_multimission_7d_v1\n Version: V1.0\n Processing_Level: Level 4\n ... ...\n geospatial_lat_resolution: 0.25\n geospatial_lat_units: degrees_north\n geospatial_lon_min: -180.0\n geospatial_lon_max: 180.0\n geospatial_lon_resolution: 0.25\n geospatial_lon_units: degrees_eastxarray.DatasetDimensions:longitude: 1440latitude: 720time: 998Coordinates: (3)longitude(longitude)float32-179.9 -179.6 ... 179.6 179.9long_name :longitudestandard_name :longitudeunits :degrees_eastaxis :Xvalid_min :-180.0valid_max :180.0coverage_content_type :coordinatearray([-179.875, -179.625, -179.375, ..., 179.375, 179.625, 179.875],\n dtype=float32)latitude(latitude)float32-89.88 -89.62 ... 89.62 89.88long_name :latitudestandard_name :latitudeunits :degrees_northaxis :Yvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([-89.875, -89.625, -89.375, ..., 89.375, 89.625, 89.875],\n dtype=float32)time(time)datetime64[ns]2011-08-28 ... 2022-08-02long_name :center day of a time period over which satellite Level 2 SSS data have been collected for OISSS analysisstandard_name :timeaxis :Tcoverage_content_type :coordinatearray(['2011-08-28T00:00:00.000000000', '2011-09-01T00:00:00.000000000',\n '2011-09-05T00:00:00.000000000', ..., '2022-07-25T00:00:00.000000000',\n '2022-07-29T00:00:00.000000000', '2022-08-02T00:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (3)sss(latitude, longitude, time)float32dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>long_name :sea surface salinitystandard_name :sea_surface_salinityunits :1e-3valid_min :0.0valid_max :45.0add_factor :0.0coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nCount\n13461 Tasks\n961 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_empirical_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n3.72 GiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 962)\n\n\nCount\n338 Tasks\n37 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoordinates :\n\ntime longitude latudude\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nCount\n8654 Tasks\n961 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\nIndexes: (3)longitudePandasIndexPandasIndex(Float64Index([-179.875, -179.625, -179.375, -179.125, -178.875, -178.625,\n -178.375, -178.125, -177.875, -177.625,\n ...\n 177.625, 177.875, 178.125, 178.375, 178.625, 178.875,\n 179.125, 179.375, 179.625, 179.875],\n dtype='float64', name='longitude', length=1440))latitudePandasIndexPandasIndex(Float64Index([-89.875, -89.625, -89.375, -89.125, -88.875, -88.625, -88.375,\n -88.125, -87.875, -87.625,\n ...\n 87.625, 87.875, 88.125, 88.375, 88.625, 88.875, 89.125,\n 89.375, 89.625, 89.875],\n dtype='float64', name='latitude', length=720))timePandasIndexPandasIndex(DatetimeIndex(['2011-08-28', '2011-09-01', '2011-09-05', '2011-09-09',\n '2011-09-13', '2011-09-17', '2011-09-21', '2011-09-25',\n '2011-09-29', '2011-10-03',\n ...\n '2022-06-27', '2022-07-01', '2022-07-05', '2022-07-09',\n '2022-07-13', '2022-07-17', '2022-07-21', '2022-07-25',\n '2022-07-29', '2022-08-02'],\n dtype='datetime64[ns]', name='time', length=998, freq=None))Attributes: (42)Conventions :CF-1.8, ACDD-1.3standard_name_vocabulary :CF Standard Name Table v27Title :Multi-Mission Optimally Interpolated Sea Surface Salinity 7-Day Global Dataset V1.0Short_Name :OISSS_L4_multimission_7d_v1Version :V1.0Processing_Level :Level 4source :Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662sourse_of_input_Aquarius_SSS :Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5sourse_of_input_SMAP_SSS :Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.sourse_of_input_SMOS_SSS :ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/accessplatform :Aquarius/SAC-D, SMAP, SMOSinstrument :Aquarius radiometer, SMAP radiometer, SMOS MIRASCreation_Date :2023-01-16T04:04:41ZCreator_Name :Oleg MelnichenkoCreator_Email :oleg@hawaii.eduCreator_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBProject :NASA Ocean SalinityKeywords :Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSSKeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science KeywordsInstitution :IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CAPublisher_Name :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzPublisher_Email :oleg@hawaii.edu.orgPublisher_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBDataset_Citation_Authors :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzDataset_Citation_Year :2021Dataset_Citation_Product :Aquarius/SMAP Sea Surface Salinity Optimum Interpolation AnalysisTechnical_Notes :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdfyear_of_observation :2022month_of_observation :3day_of_observation :11time_coverage_start :2022-03-07T12:00:00Ztime_coverage_end :2022-03-15T12:00:00Ztime_coverage_resolution :P7Dcdm_data_type :gridgeospatial_lat_min :-90.0geospatial_lat_max :90.0geospatial_lat_resolution :0.25geospatial_lat_units :degrees_northgeospatial_lon_min :-180.0geospatial_lon_max :180.0geospatial_lon_resolution :0.25geospatial_lon_units :degrees_east\n\n\n\n\nPlot a subset of the data\nUse the function xarray.DataSet.sel to select a subset of the data at the outlet of the Amazon to plot at time t=0 (August 28, 2011) with hvplot.\n\nlat_bnds, lon_bnds = [-2, 6], [-52, -44] \nds_sss_subset = ds_sss.sel(latitude=slice(*lat_bnds), longitude=slice(*lon_bnds))\nds_sss_subset\n\nds_sss_subset.sss[:,:,0].hvplot()", + "text": "Sea Surface Salinity (Multi-mission: SMAP, Aquarius, SMOS)\nThe shortname for this dataset is ‘OISSS_L4_multimission_7day_v1’. This dataset contains hundreds of granules, by using earthaccess search, we access 998 granules.\nSince this dataset has more than 1 granule that we want to open for visualization, we have to establish the full file path in a different way. For the previous datasets, we could list the exact file, but that would be difficult to do with hundreds of granules. Therefore, the extra step to recurse through the directory to access all files.\n\n#earthaccess search\nsss_results = earthaccess.search_data(short_name=\"OISSS_L4_multimission_7day_v1\")\n\nGranules found: 998\n\n\n\n#earthaccess download\nsss_files = earthaccess.download(sss_results, \"./sss_data\")\n\n Getting 998 granules, approx download size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n#ensures that all files are included in the path\nsss_path = [os.path.join(\"./sss_data\", f) \n for pth, dirs, files in os.walk(\"./sss_data\") for f in files]\n\n\nds_sss = xr.open_mfdataset(sss_path,\n combine='by_coords',\n mask_and_scale=True,\n decode_cf=True,\n chunks='auto',\n engine='h5netcdf')\nds_sss\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 1440, latitude: 720, time: 998)\nCoordinates:\n * longitude (longitude) float32 -179.9 -179.6 ... 179.6 179.9\n * latitude (latitude) float32 -89.88 -89.62 ... 89.62 89.88\n * time (time) datetime64[ns] 2011-08-28 ... 2022-08-02\nData variables:\n sss (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_empirical_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n sss_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\nAttributes: (12/42)\n Conventions: CF-1.8, ACDD-1.3\n standard_name_vocabulary: CF Standard Name Table v27\n Title: Multi-Mission Optimally Interpolated Sea S...\n Short_Name: OISSS_L4_multimission_7d_v1\n Version: V1.0\n Processing_Level: Level 4\n ... ...\n geospatial_lat_resolution: 0.25\n geospatial_lat_units: degrees_north\n geospatial_lon_min: -180.0\n geospatial_lon_max: 180.0\n geospatial_lon_resolution: 0.25\n geospatial_lon_units: degrees_eastxarray.DatasetDimensions:longitude: 1440latitude: 720time: 998Coordinates: (3)longitude(longitude)float32-179.9 -179.6 ... 179.6 179.9long_name :longitudestandard_name :longitudeunits :degrees_eastaxis :Xvalid_min :-180.0valid_max :180.0coverage_content_type :coordinatearray([-179.875, -179.625, -179.375, ..., 179.375, 179.625, 179.875],\n dtype=float32)latitude(latitude)float32-89.88 -89.62 ... 89.62 89.88long_name :latitudestandard_name :latitudeunits :degrees_northaxis :Yvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([-89.875, -89.625, -89.375, ..., 89.375, 89.625, 89.875],\n dtype=float32)time(time)datetime64[ns]2011-08-28 ... 2022-08-02long_name :center day of a time period over which satellite Level 2 SSS data have been collected for OISSS analysisstandard_name :timeaxis :Tcoverage_content_type :coordinatearray(['2011-08-28T00:00:00.000000000', '2011-09-01T00:00:00.000000000',\n '2011-09-05T00:00:00.000000000', ..., '2022-07-25T00:00:00.000000000',\n '2022-07-29T00:00:00.000000000', '2022-08-02T00:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (3)sss(latitude, longitude, time)float32dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>long_name :sea surface salinitystandard_name :sea_surface_salinityunits :1e-3valid_min :0.0valid_max :45.0add_factor :0.0coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nCount\n13461 Tasks\n961 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_empirical_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n3.72 GiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 962)\n\n\nCount\n338 Tasks\n37 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoordinates :\n\ntime longitude latudude\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nCount\n8654 Tasks\n961 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\nIndexes: (3)longitudePandasIndexPandasIndex(Float64Index([-179.875, -179.625, -179.375, -179.125, -178.875, -178.625,\n -178.375, -178.125, -177.875, -177.625,\n ...\n 177.625, 177.875, 178.125, 178.375, 178.625, 178.875,\n 179.125, 179.375, 179.625, 179.875],\n dtype='float64', name='longitude', length=1440))latitudePandasIndexPandasIndex(Float64Index([-89.875, -89.625, -89.375, -89.125, -88.875, -88.625, -88.375,\n -88.125, -87.875, -87.625,\n ...\n 87.625, 87.875, 88.125, 88.375, 88.625, 88.875, 89.125,\n 89.375, 89.625, 89.875],\n dtype='float64', name='latitude', length=720))timePandasIndexPandasIndex(DatetimeIndex(['2011-08-28', '2011-09-01', '2011-09-05', '2011-09-09',\n '2011-09-13', '2011-09-17', '2011-09-21', '2011-09-25',\n '2011-09-29', '2011-10-03',\n ...\n '2022-06-27', '2022-07-01', '2022-07-05', '2022-07-09',\n '2022-07-13', '2022-07-17', '2022-07-21', '2022-07-25',\n '2022-07-29', '2022-08-02'],\n dtype='datetime64[ns]', name='time', length=998, freq=None))Attributes: (42)Conventions :CF-1.8, ACDD-1.3standard_name_vocabulary :CF Standard Name Table v27Title :Multi-Mission Optimally Interpolated Sea Surface Salinity 7-Day Global Dataset V1.0Short_Name :OISSS_L4_multimission_7d_v1Version :V1.0Processing_Level :Level 4source :Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662sourse_of_input_Aquarius_SSS :Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5sourse_of_input_SMAP_SSS :Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.sourse_of_input_SMOS_SSS :ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/accessplatform :Aquarius/SAC-D, SMAP, SMOSinstrument :Aquarius radiometer, SMAP radiometer, SMOS MIRASCreation_Date :2023-01-16T04:04:41ZCreator_Name :Oleg MelnichenkoCreator_Email :oleg@hawaii.eduCreator_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBProject :NASA Ocean SalinityKeywords :Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSSKeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science KeywordsInstitution :IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CAPublisher_Name :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzPublisher_Email :oleg@hawaii.edu.orgPublisher_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBDataset_Citation_Authors :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzDataset_Citation_Year :2021Dataset_Citation_Product :Aquarius/SMAP Sea Surface Salinity Optimum Interpolation AnalysisTechnical_Notes :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdfyear_of_observation :2022month_of_observation :3day_of_observation :11time_coverage_start :2022-03-07T12:00:00Ztime_coverage_end :2022-03-15T12:00:00Ztime_coverage_resolution :P7Dcdm_data_type :gridgeospatial_lat_min :-90.0geospatial_lat_max :90.0geospatial_lat_resolution :0.25geospatial_lat_units :degrees_northgeospatial_lon_min :-180.0geospatial_lon_max :180.0geospatial_lon_resolution :0.25geospatial_lon_units :degrees_east\n\n\n\nPlot a subset of the data\nUse the function xarray.DataSet.sel to select a subset of the data at the outlet of the Amazon to plot at time t=0 (August 28, 2011) with hvplot.\n\nlat_bnds, lon_bnds = [-2, 6], [-52, -44] \nds_sss_subset = ds_sss.sel(latitude=slice(*lat_bnds), longitude=slice(*lon_bnds))\nds_sss_subset\n\nds_sss_subset.sss[:,:,0].hvplot()", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -1865,7 +1865,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html#sea-surface-temperature-modis", "title": "Amazon Estuary Exploration:", "section": "Sea Surface Temperature (MODIS)", - "text": "Sea Surface Temperature (MODIS)\nMODIS has SST data with separate files on a monthly basis. By using earthaccess search with the shortname: “MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0”, and filtering by time to coincide when SSS started (2011), we access 143 granules.\nGet a list of files so we can open them all at once, creating an xarray dataset using the open_mfdataset() function to “read in” all of the netCDF4 files in one call. MODIS does not have a built-in time variable like SSS, but it is subset by latitude and longitude coordinates. We need to combine the files using the nested format with a created ‘time’ dimension.\n\nsss_results = earthaccess.search_data(short_name=\"MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0\", temporal = (\"2011-01-01\", \"2023-01-01\"))\n\nGranules found: 143\n\n\n\nsss_files = earthaccess.download(sss_results, \"./modis_data\")\n\n Getting 143 granules, approx download size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\nMODIS did not come with a time variable, so it needs to be extracted from the file names and added in the file preprocessing so files can be successfully concatenated.\n\n#repeat this step since we are accessing multiple granules\nmodis_path = [os.path.join(\"./modis_data\", f) \n for pth, dirs, files in os.walk(\"./modis_data\") for f in files]\n\n\n#function for time dimension added to each netCDF file\ndef preprocessing(ds): \n file_name = ds.product_name \n file_date = basename(file_name).split(\"_\")[2][:6]\n file_date_c = datetime.strptime(file_date, \"%Y%m\")\n time_point = [file_date_c]\n ds.coords['time'] = ('time', time_point) #expand the dimensions to include time\n return ds\n\nds_MODIS = xr.open_mfdataset(modis_path, combine='by_coords', join='override', preprocess = preprocessing)\nds_MODIS\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 143, lat: 2160, lon: 4320, rgb: 3, eightbitcolor: 256)\nCoordinates:\n * lat (lat) float32 89.96 89.88 89.79 89.71 ... -89.79 -89.88 -89.96\n * lon (lon) float32 -180.0 -179.9 -179.8 -179.7 ... 179.8 179.9 180.0\n * time (time) datetime64[ns] 2011-01-01 2011-02-01 ... 2023-01-01\nDimensions without coordinates: rgb, eightbitcolor\nData variables:\n sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n qual_sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n palette (time, lon, lat, rgb, eightbitcolor) uint8 dask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\nAttributes: (12/59)\n product_name: AQUA_MODIS.20110101_20110131.L3m.MO.SST...\n instrument: MODIS\n title: MODISA Level-3 Standard Mapped Image\n project: Ocean Biology Processing Group (NASA/GS...\n platform: Aqua\n temporal_range: month\n ... ...\n publisher_url: https://oceandata.sci.gsfc.nasa.gov\n processing_level: L3 Mapped\n cdm_data_type: grid\n data_bins: 4834400\n data_minimum: -1.635\n data_maximum: 32.06999xarray.DatasetDimensions:time: 143lat: 2160lon: 4320rgb: 3eightbitcolor: 256Coordinates: (3)lat(lat)float3289.96 89.88 89.79 ... -89.88 -89.96long_name :Latitudeunits :degrees_northstandard_name :latitudevalid_min :-90.0valid_max :90.0array([ 89.958336, 89.875 , 89.79167 , ..., -89.791664, -89.87501 ,\n -89.958336], dtype=float32)lon(lon)float32-180.0 -179.9 ... 179.9 180.0long_name :Longitudeunits :degrees_eaststandard_name :longitudevalid_min :-180.0valid_max :180.0array([-179.95833, -179.875 , -179.79166, ..., 179.79167, 179.87502,\n 179.95836], dtype=float32)time(time)datetime64[ns]2011-01-01 ... 2023-01-01array(['2011-01-01T00:00:00.000000000', '2011-02-01T00:00:00.000000000',\n '2011-03-01T00:00:00.000000000', '2011-04-01T00:00:00.000000000',\n '2011-05-01T00:00:00.000000000', '2011-06-01T00:00:00.000000000',\n '2011-07-01T00:00:00.000000000', '2011-08-01T00:00:00.000000000',\n '2011-09-01T00:00:00.000000000', '2011-10-01T00:00:00.000000000',\n '2011-11-01T00:00:00.000000000', '2011-12-01T00:00:00.000000000',\n '2012-01-01T00:00:00.000000000', '2012-02-01T00:00:00.000000000',\n '2012-03-01T00:00:00.000000000', '2012-04-01T00:00:00.000000000',\n '2012-05-01T00:00:00.000000000', '2012-06-01T00:00:00.000000000',\n '2012-07-01T00:00:00.000000000', '2012-08-01T00:00:00.000000000',\n '2012-09-01T00:00:00.000000000', '2012-10-01T00:00:00.000000000',\n '2012-11-01T00:00:00.000000000', '2012-12-01T00:00:00.000000000',\n '2013-01-01T00:00:00.000000000', '2013-02-01T00:00:00.000000000',\n '2013-03-01T00:00:00.000000000', '2013-04-01T00:00:00.000000000',\n '2013-05-01T00:00:00.000000000', '2013-06-01T00:00:00.000000000',\n '2013-07-01T00:00:00.000000000', '2013-08-01T00:00:00.000000000',\n '2013-09-01T00:00:00.000000000', '2013-10-01T00:00:00.000000000',\n '2013-11-01T00:00:00.000000000', '2013-12-01T00:00:00.000000000',\n '2014-01-01T00:00:00.000000000', '2014-02-01T00:00:00.000000000',\n '2014-03-01T00:00:00.000000000', '2014-04-01T00:00:00.000000000',\n '2014-05-01T00:00:00.000000000', '2014-06-01T00:00:00.000000000',\n '2014-07-01T00:00:00.000000000', '2014-08-01T00:00:00.000000000',\n '2014-09-01T00:00:00.000000000', '2014-10-01T00:00:00.000000000',\n '2014-11-01T00:00:00.000000000', '2014-12-01T00:00:00.000000000',\n '2015-01-01T00:00:00.000000000', '2015-02-01T00:00:00.000000000',\n '2015-03-01T00:00:00.000000000', '2015-04-01T00:00:00.000000000',\n '2015-05-01T00:00:00.000000000', '2015-06-01T00:00:00.000000000',\n '2015-07-01T00:00:00.000000000', '2015-08-01T00:00:00.000000000',\n '2015-09-01T00:00:00.000000000', '2015-10-01T00:00:00.000000000',\n '2015-11-01T00:00:00.000000000', '2015-12-01T00:00:00.000000000',\n '2016-01-01T00:00:00.000000000', '2016-02-01T00:00:00.000000000',\n '2016-03-01T00:00:00.000000000', '2016-04-01T00:00:00.000000000',\n '2016-05-01T00:00:00.000000000', '2016-06-01T00:00:00.000000000',\n '2016-07-01T00:00:00.000000000', '2016-08-01T00:00:00.000000000',\n '2016-09-01T00:00:00.000000000', '2016-10-01T00:00:00.000000000',\n '2016-11-01T00:00:00.000000000', '2016-12-01T00:00:00.000000000',\n '2017-01-01T00:00:00.000000000', '2017-02-01T00:00:00.000000000',\n '2017-03-01T00:00:00.000000000', '2017-04-01T00:00:00.000000000',\n '2017-05-01T00:00:00.000000000', '2017-06-01T00:00:00.000000000',\n '2017-07-01T00:00:00.000000000', '2017-08-01T00:00:00.000000000',\n '2017-09-01T00:00:00.000000000', '2017-10-01T00:00:00.000000000',\n '2017-11-01T00:00:00.000000000', '2017-12-01T00:00:00.000000000',\n '2018-01-01T00:00:00.000000000', '2018-02-01T00:00:00.000000000',\n '2018-03-01T00:00:00.000000000', '2018-04-01T00:00:00.000000000',\n '2018-05-01T00:00:00.000000000', '2018-06-01T00:00:00.000000000',\n '2018-07-01T00:00:00.000000000', '2018-08-01T00:00:00.000000000',\n '2018-09-01T00:00:00.000000000', '2018-10-01T00:00:00.000000000',\n '2018-11-01T00:00:00.000000000', '2018-12-01T00:00:00.000000000',\n '2019-01-01T00:00:00.000000000', '2019-02-01T00:00:00.000000000',\n '2019-03-01T00:00:00.000000000', '2019-04-01T00:00:00.000000000',\n '2019-05-01T00:00:00.000000000', '2019-06-01T00:00:00.000000000',\n '2019-07-01T00:00:00.000000000', '2019-08-01T00:00:00.000000000',\n '2019-09-01T00:00:00.000000000', '2019-10-01T00:00:00.000000000',\n '2019-11-01T00:00:00.000000000', '2019-12-01T00:00:00.000000000',\n '2020-01-01T00:00:00.000000000', '2020-02-01T00:00:00.000000000',\n '2020-03-01T00:00:00.000000000', '2020-04-01T00:00:00.000000000',\n '2020-05-01T00:00:00.000000000', '2020-06-01T00:00:00.000000000',\n '2020-07-01T00:00:00.000000000', '2020-08-01T00:00:00.000000000',\n '2020-09-01T00:00:00.000000000', '2020-10-01T00:00:00.000000000',\n '2020-11-01T00:00:00.000000000', '2020-12-01T00:00:00.000000000',\n '2021-01-01T00:00:00.000000000', '2021-02-01T00:00:00.000000000',\n '2021-03-01T00:00:00.000000000', '2021-04-01T00:00:00.000000000',\n '2021-05-01T00:00:00.000000000', '2021-06-01T00:00:00.000000000',\n '2021-07-01T00:00:00.000000000', '2021-09-01T00:00:00.000000000',\n '2021-10-01T00:00:00.000000000', '2021-11-01T00:00:00.000000000',\n '2021-12-01T00:00:00.000000000', '2022-01-01T00:00:00.000000000',\n '2022-02-01T00:00:00.000000000', '2022-03-01T00:00:00.000000000',\n '2022-04-01T00:00:00.000000000', '2022-05-01T00:00:00.000000000',\n '2022-06-01T00:00:00.000000000', '2022-07-01T00:00:00.000000000',\n '2022-08-01T00:00:00.000000000', '2022-09-01T00:00:00.000000000',\n '2022-10-01T00:00:00.000000000', '2022-11-01T00:00:00.000000000',\n '2023-01-01T00:00:00.000000000'], dtype='datetime64[ns]')Data variables: (3)sst4(time, lat, lon)float32dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>long_name :4um Sea Surface Temperatureunits :degree_Cstandard_name :sea_surface_temperaturevalid_min :-1000valid_max :10000display_scale :lineardisplay_min :-2.0display_max :45.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nCount\n572 Tasks\n143 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\nqual_sst4\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nQuality Levels, Sea Surface Temperature\n\nvalid_min :\n\n0\n\nvalid_max :\n\n5\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nCount\n572 Tasks\n143 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\npalette\n\n\n(time, lon, lat, rgb, eightbitcolor)\n\n\nuint8\n\n\ndask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.93 TiB\n6.67 GiB\n\n\nShape\n(143, 4320, 2160, 3, 256)\n(1, 4320, 2160, 3, 256)\n\n\nCount\n858 Tasks\n143 Chunks\n\n\nType\nuint8\nnumpy.ndarray\n\n\n\n\n 4320 143 256 3 2160\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Float64Index([ 89.95833587646484, 89.875, 89.79167175292969,\n 89.70833587646484, 89.625, 89.54167175292969,\n 89.45833587646484, 89.375, 89.29167175292969,\n 89.20833587646484,\n ...\n -89.20833587646484, -89.29166412353516, -89.37500762939453,\n -89.45833587646484, -89.54166412353516, -89.62500762939453,\n -89.70833587646484, -89.79166412353516, -89.87500762939453,\n -89.95833587646484],\n dtype='float64', name='lat', length=2160))lonPandasIndexPandasIndex(Float64Index([ -179.9583282470703, -179.875, -179.79165649414062,\n -179.7083282470703, -179.625, -179.54165649414062,\n -179.4583282470703, -179.375, -179.29165649414062,\n -179.2083282470703,\n ...\n 179.20835876464844, 179.2916717529297, 179.37501525878906,\n 179.45835876464844, 179.5416717529297, 179.62501525878906,\n 179.70835876464844, 179.7916717529297, 179.87501525878906,\n 179.95835876464844],\n dtype='float64', name='lon', length=4320))timePandasIndexPandasIndex(DatetimeIndex(['2011-01-01', '2011-02-01', '2011-03-01', '2011-04-01',\n '2011-05-01', '2011-06-01', '2011-07-01', '2011-08-01',\n '2011-09-01', '2011-10-01',\n ...\n '2022-03-01', '2022-04-01', '2022-05-01', '2022-06-01',\n '2022-07-01', '2022-08-01', '2022-09-01', '2022-10-01',\n '2022-11-01', '2023-01-01'],\n dtype='datetime64[ns]', name='time', length=143, freq=None))Attributes: (59)product_name :AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.ncinstrument :MODIStitle :MODISA Level-3 Standard Mapped Imageproject :Ocean Biology Processing Group (NASA/GSFC/OBPG)platform :Aquatemporal_range :monthprocessing_version :R2019.0date_created :2019-12-17T18:28:57.000Zhistory :l3mapgen par=AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc.param l2_flag_names :LAND,~HISOLZENtime_coverage_start :2010-12-31T12:10:01.000Ztime_coverage_end :2011-01-31T14:29:59.000Zstart_orbit_number :46065end_orbit_number :46518map_projection :Equidistant Cylindricallatitude_units :degrees_northlongitude_units :degrees_eastnorthernmost_latitude :90.0southernmost_latitude :-90.0westernmost_longitude :-180.0easternmost_longitude :180.0geospatial_lat_max :90.0geospatial_lat_min :-90.0geospatial_lon_max :180.0geospatial_lon_min :-180.0latitude_step :0.083333336longitude_step :0.083333336sw_point_latitude :-89.958336sw_point_longitude :-179.95833spatialResolution :9.28 kmgeospatial_lon_resolution :0.083333336geospatial_lat_resolution :0.083333336geospatial_lat_units :degrees_northgeospatial_lon_units :degrees_eastnumber_of_lines :2160number_of_columns :4320measure :Meansuggested_image_scaling_minimum :-2.0suggested_image_scaling_maximum :45.0suggested_image_scaling_type :LINEARsuggested_image_scaling_applied :No_lastModified :2019-12-17T18:28:57.000ZConventions :CF-1.6 ACDD-1.3institution :NASA Goddard Space Flight Center, Ocean Ecology Laboratory, Ocean Biology Processing Groupstandard_name_vocabulary :CF Standard Name Table v36naming_authority :gov.nasa.gsfc.sci.oceandataid :AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc/L3/AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nclicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policy/creator_name :NASA/GSFC/OBPGpublisher_name :NASA/GSFC/OBPGcreator_email :data@oceancolor.gsfc.nasa.govpublisher_email :data@oceancolor.gsfc.nasa.govcreator_url :https://oceandata.sci.gsfc.nasa.govpublisher_url :https://oceandata.sci.gsfc.nasa.govprocessing_level :L3 Mappedcdm_data_type :griddata_bins :4834400data_minimum :-1.635data_maximum :32.06999", + "text": "Sea Surface Temperature (MODIS)\nMODIS has SST data with separate files on a monthly basis. By using earthaccess search with the shortname: “MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0”, and filtering by time to coincide when SSS started (2011), we access 143 granules.\nGet a list of files so we can open them all at once, creating an xarray dataset using the open_mfdataset() function to “read in” all of the netCDF4 files in one call. MODIS does not have a built-in time variable like SSS, but it is subset by latitude and longitude coordinates. We need to combine the files using the nested format with a created ‘time’ dimension.\n\nsss_results = earthaccess.search_data(short_name=\"MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0\", temporal = (\"2011-01-01\", \"2023-01-01\"))\n\nGranules found: 143\n\n\n\nsss_files = earthaccess.download(sss_results, \"./modis_data\")\n\n Getting 143 granules, approx download size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\nMODIS did not come with a time variable, so it needs to be extracted from the file names and added in the file preprocessing so files can be successfully concatenated.\n\n#repeat this step since we are accessing multiple granules\nmodis_path = [os.path.join(\"./modis_data\", f) \n for pth, dirs, files in os.walk(\"./modis_data\") for f in files]\n\n\n#function for time dimension added to each netCDF file\ndef preprocessing(ds): \n file_name = ds.product_name \n file_date = basename(file_name).split(\"_\")[2][:6]\n file_date_c = datetime.strptime(file_date, \"%Y%m\")\n time_point = [file_date_c]\n ds.coords['time'] = ('time', time_point) #expand the dimensions to include time\n return ds\n\nds_MODIS = xr.open_mfdataset(modis_path, combine='by_coords', join='override', preprocess = preprocessing)\nds_MODIS\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 143, lat: 2160, lon: 4320, rgb: 3, eightbitcolor: 256)\nCoordinates:\n * lat (lat) float32 89.96 89.88 89.79 89.71 ... -89.79 -89.88 -89.96\n * lon (lon) float32 -180.0 -179.9 -179.8 -179.7 ... 179.8 179.9 180.0\n * time (time) datetime64[ns] 2011-01-01 2011-02-01 ... 2023-01-01\nDimensions without coordinates: rgb, eightbitcolor\nData variables:\n sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n qual_sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n palette (time, lon, lat, rgb, eightbitcolor) uint8 dask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\nAttributes: (12/59)\n product_name: AQUA_MODIS.20110101_20110131.L3m.MO.SST...\n instrument: MODIS\n title: MODISA Level-3 Standard Mapped Image\n project: Ocean Biology Processing Group (NASA/GS...\n platform: Aqua\n temporal_range: month\n ... ...\n publisher_url: https://oceandata.sci.gsfc.nasa.gov\n processing_level: L3 Mapped\n cdm_data_type: grid\n data_bins: 4834400\n data_minimum: -1.635\n data_maximum: 32.06999xarray.DatasetDimensions:time: 143lat: 2160lon: 4320rgb: 3eightbitcolor: 256Coordinates: (3)lat(lat)float3289.96 89.88 89.79 ... -89.88 -89.96long_name :Latitudeunits :degrees_northstandard_name :latitudevalid_min :-90.0valid_max :90.0array([ 89.958336, 89.875 , 89.79167 , ..., -89.791664, -89.87501 ,\n -89.958336], dtype=float32)lon(lon)float32-180.0 -179.9 ... 179.9 180.0long_name :Longitudeunits :degrees_eaststandard_name :longitudevalid_min :-180.0valid_max :180.0array([-179.95833, -179.875 , -179.79166, ..., 179.79167, 179.87502,\n 179.95836], dtype=float32)time(time)datetime64[ns]2011-01-01 ... 2023-01-01array(['2011-01-01T00:00:00.000000000', '2011-02-01T00:00:00.000000000',\n '2011-03-01T00:00:00.000000000', '2011-04-01T00:00:00.000000000',\n '2011-05-01T00:00:00.000000000', '2011-06-01T00:00:00.000000000',\n '2011-07-01T00:00:00.000000000', '2011-08-01T00:00:00.000000000',\n '2011-09-01T00:00:00.000000000', '2011-10-01T00:00:00.000000000',\n '2011-11-01T00:00:00.000000000', '2011-12-01T00:00:00.000000000',\n '2012-01-01T00:00:00.000000000', '2012-02-01T00:00:00.000000000',\n '2012-03-01T00:00:00.000000000', '2012-04-01T00:00:00.000000000',\n '2012-05-01T00:00:00.000000000', '2012-06-01T00:00:00.000000000',\n '2012-07-01T00:00:00.000000000', '2012-08-01T00:00:00.000000000',\n '2012-09-01T00:00:00.000000000', '2012-10-01T00:00:00.000000000',\n '2012-11-01T00:00:00.000000000', '2012-12-01T00:00:00.000000000',\n '2013-01-01T00:00:00.000000000', '2013-02-01T00:00:00.000000000',\n '2013-03-01T00:00:00.000000000', '2013-04-01T00:00:00.000000000',\n '2013-05-01T00:00:00.000000000', '2013-06-01T00:00:00.000000000',\n '2013-07-01T00:00:00.000000000', '2013-08-01T00:00:00.000000000',\n '2013-09-01T00:00:00.000000000', '2013-10-01T00:00:00.000000000',\n '2013-11-01T00:00:00.000000000', '2013-12-01T00:00:00.000000000',\n '2014-01-01T00:00:00.000000000', '2014-02-01T00:00:00.000000000',\n '2014-03-01T00:00:00.000000000', '2014-04-01T00:00:00.000000000',\n '2014-05-01T00:00:00.000000000', '2014-06-01T00:00:00.000000000',\n '2014-07-01T00:00:00.000000000', '2014-08-01T00:00:00.000000000',\n '2014-09-01T00:00:00.000000000', '2014-10-01T00:00:00.000000000',\n '2014-11-01T00:00:00.000000000', '2014-12-01T00:00:00.000000000',\n '2015-01-01T00:00:00.000000000', '2015-02-01T00:00:00.000000000',\n '2015-03-01T00:00:00.000000000', '2015-04-01T00:00:00.000000000',\n '2015-05-01T00:00:00.000000000', '2015-06-01T00:00:00.000000000',\n '2015-07-01T00:00:00.000000000', '2015-08-01T00:00:00.000000000',\n '2015-09-01T00:00:00.000000000', '2015-10-01T00:00:00.000000000',\n '2015-11-01T00:00:00.000000000', '2015-12-01T00:00:00.000000000',\n '2016-01-01T00:00:00.000000000', '2016-02-01T00:00:00.000000000',\n '2016-03-01T00:00:00.000000000', '2016-04-01T00:00:00.000000000',\n '2016-05-01T00:00:00.000000000', '2016-06-01T00:00:00.000000000',\n '2016-07-01T00:00:00.000000000', '2016-08-01T00:00:00.000000000',\n '2016-09-01T00:00:00.000000000', '2016-10-01T00:00:00.000000000',\n '2016-11-01T00:00:00.000000000', '2016-12-01T00:00:00.000000000',\n '2017-01-01T00:00:00.000000000', '2017-02-01T00:00:00.000000000',\n '2017-03-01T00:00:00.000000000', '2017-04-01T00:00:00.000000000',\n '2017-05-01T00:00:00.000000000', '2017-06-01T00:00:00.000000000',\n '2017-07-01T00:00:00.000000000', '2017-08-01T00:00:00.000000000',\n '2017-09-01T00:00:00.000000000', '2017-10-01T00:00:00.000000000',\n '2017-11-01T00:00:00.000000000', '2017-12-01T00:00:00.000000000',\n '2018-01-01T00:00:00.000000000', '2018-02-01T00:00:00.000000000',\n '2018-03-01T00:00:00.000000000', '2018-04-01T00:00:00.000000000',\n '2018-05-01T00:00:00.000000000', '2018-06-01T00:00:00.000000000',\n '2018-07-01T00:00:00.000000000', '2018-08-01T00:00:00.000000000',\n '2018-09-01T00:00:00.000000000', '2018-10-01T00:00:00.000000000',\n '2018-11-01T00:00:00.000000000', '2018-12-01T00:00:00.000000000',\n '2019-01-01T00:00:00.000000000', '2019-02-01T00:00:00.000000000',\n '2019-03-01T00:00:00.000000000', '2019-04-01T00:00:00.000000000',\n '2019-05-01T00:00:00.000000000', '2019-06-01T00:00:00.000000000',\n '2019-07-01T00:00:00.000000000', '2019-08-01T00:00:00.000000000',\n '2019-09-01T00:00:00.000000000', '2019-10-01T00:00:00.000000000',\n '2019-11-01T00:00:00.000000000', '2019-12-01T00:00:00.000000000',\n '2020-01-01T00:00:00.000000000', '2020-02-01T00:00:00.000000000',\n '2020-03-01T00:00:00.000000000', '2020-04-01T00:00:00.000000000',\n '2020-05-01T00:00:00.000000000', '2020-06-01T00:00:00.000000000',\n '2020-07-01T00:00:00.000000000', '2020-08-01T00:00:00.000000000',\n '2020-09-01T00:00:00.000000000', '2020-10-01T00:00:00.000000000',\n '2020-11-01T00:00:00.000000000', '2020-12-01T00:00:00.000000000',\n '2021-01-01T00:00:00.000000000', '2021-02-01T00:00:00.000000000',\n '2021-03-01T00:00:00.000000000', '2021-04-01T00:00:00.000000000',\n '2021-05-01T00:00:00.000000000', '2021-06-01T00:00:00.000000000',\n '2021-07-01T00:00:00.000000000', '2021-09-01T00:00:00.000000000',\n '2021-10-01T00:00:00.000000000', '2021-11-01T00:00:00.000000000',\n '2021-12-01T00:00:00.000000000', '2022-01-01T00:00:00.000000000',\n '2022-02-01T00:00:00.000000000', '2022-03-01T00:00:00.000000000',\n '2022-04-01T00:00:00.000000000', '2022-05-01T00:00:00.000000000',\n '2022-06-01T00:00:00.000000000', '2022-07-01T00:00:00.000000000',\n '2022-08-01T00:00:00.000000000', '2022-09-01T00:00:00.000000000',\n '2022-10-01T00:00:00.000000000', '2022-11-01T00:00:00.000000000',\n '2023-01-01T00:00:00.000000000'], dtype='datetime64[ns]')Data variables: (3)sst4(time, lat, lon)float32dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>long_name :4um Sea Surface Temperatureunits :degree_Cstandard_name :sea_surface_temperaturevalid_min :-1000valid_max :10000display_scale :lineardisplay_min :-2.0display_max :45.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nCount\n572 Tasks\n143 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\nqual_sst4\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nQuality Levels, Sea Surface Temperature\n\nvalid_min :\n\n0\n\nvalid_max :\n\n5\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nCount\n572 Tasks\n143 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\npalette\n\n\n(time, lon, lat, rgb, eightbitcolor)\n\n\nuint8\n\n\ndask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.93 TiB\n6.67 GiB\n\n\nShape\n(143, 4320, 2160, 3, 256)\n(1, 4320, 2160, 3, 256)\n\n\nCount\n858 Tasks\n143 Chunks\n\n\nType\nuint8\nnumpy.ndarray\n\n\n\n\n 4320 143 256 3 2160\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Float64Index([ 89.95833587646484, 89.875, 89.79167175292969,\n 89.70833587646484, 89.625, 89.54167175292969,\n 89.45833587646484, 89.375, 89.29167175292969,\n 89.20833587646484,\n ...\n -89.20833587646484, -89.29166412353516, -89.37500762939453,\n -89.45833587646484, -89.54166412353516, -89.62500762939453,\n -89.70833587646484, -89.79166412353516, -89.87500762939453,\n -89.95833587646484],\n dtype='float64', name='lat', length=2160))lonPandasIndexPandasIndex(Float64Index([ -179.9583282470703, -179.875, -179.79165649414062,\n -179.7083282470703, -179.625, -179.54165649414062,\n -179.4583282470703, -179.375, -179.29165649414062,\n -179.2083282470703,\n ...\n 179.20835876464844, 179.2916717529297, 179.37501525878906,\n 179.45835876464844, 179.5416717529297, 179.62501525878906,\n 179.70835876464844, 179.7916717529297, 179.87501525878906,\n 179.95835876464844],\n dtype='float64', name='lon', length=4320))timePandasIndexPandasIndex(DatetimeIndex(['2011-01-01', '2011-02-01', '2011-03-01', '2011-04-01',\n '2011-05-01', '2011-06-01', '2011-07-01', '2011-08-01',\n '2011-09-01', '2011-10-01',\n ...\n '2022-03-01', '2022-04-01', '2022-05-01', '2022-06-01',\n '2022-07-01', '2022-08-01', '2022-09-01', '2022-10-01',\n '2022-11-01', '2023-01-01'],\n dtype='datetime64[ns]', name='time', length=143, freq=None))Attributes: (59)product_name :AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.ncinstrument :MODIStitle :MODISA Level-3 Standard Mapped Imageproject :Ocean Biology Processing Group (NASA/GSFC/OBPG)platform :Aquatemporal_range :monthprocessing_version :R2019.0date_created :2019-12-17T18:28:57.000Zhistory :l3mapgen par=AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc.param l2_flag_names :LAND,~HISOLZENtime_coverage_start :2010-12-31T12:10:01.000Ztime_coverage_end :2011-01-31T14:29:59.000Zstart_orbit_number :46065end_orbit_number :46518map_projection :Equidistant Cylindricallatitude_units :degrees_northlongitude_units :degrees_eastnorthernmost_latitude :90.0southernmost_latitude :-90.0westernmost_longitude :-180.0easternmost_longitude :180.0geospatial_lat_max :90.0geospatial_lat_min :-90.0geospatial_lon_max :180.0geospatial_lon_min :-180.0latitude_step :0.083333336longitude_step :0.083333336sw_point_latitude :-89.958336sw_point_longitude :-179.95833spatialResolution :9.28 kmgeospatial_lon_resolution :0.083333336geospatial_lat_resolution :0.083333336geospatial_lat_units :degrees_northgeospatial_lon_units :degrees_eastnumber_of_lines :2160number_of_columns :4320measure :Meansuggested_image_scaling_minimum :-2.0suggested_image_scaling_maximum :45.0suggested_image_scaling_type :LINEARsuggested_image_scaling_applied :No_lastModified :2019-12-17T18:28:57.000ZConventions :CF-1.6 ACDD-1.3institution :NASA Goddard Space Flight Center, Ocean Ecology Laboratory, Ocean Biology Processing Groupstandard_name_vocabulary :CF Standard Name Table v36naming_authority :gov.nasa.gsfc.sci.oceandataid :AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc/L3/AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nclicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policy/creator_name :NASA/GSFC/OBPGpublisher_name :NASA/GSFC/OBPGcreator_email :data@oceancolor.gsfc.nasa.govpublisher_email :data@oceancolor.gsfc.nasa.govcreator_url :https://oceandata.sci.gsfc.nasa.govpublisher_url :https://oceandata.sci.gsfc.nasa.govprocessing_level :L3 Mappedcdm_data_type :griddata_bins :4834400data_minimum :-1.635data_maximum :32.06999", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -1943,7 +1943,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/ECCO_ssh_sst_corr.html#read-the-s3-zarr-endpoints-and-aggregate-to-single-zarr", "title": "The spatial Correlation between sea surface temperature anomaly and sea surface height anomaly in the Indian Ocean – A demo using ECCO", "section": "Read the S3 Zarr endpoints and aggregate to single Zarr", - "text": "Read the S3 Zarr endpoints and aggregate to single Zarr\n\n# 1) read the AWS credentials\nprint(ecco_response['message'])\nwith requests.get(ecco_response['links'][2]['href']) as r:\n creds = r.json()\n\nprint( creds.keys() )\nprint(\"AWS credentials expire on: \", creds['Expiration'] )\n\n\n# 2) print root directory and read the s3 URLs into a list\ns3_dir2 = ecco_response['links'][3]['href']\nprint(\"root directory:\", s3_dir2)\ns3_urls2 = [u['href'] for u in ecco_response['links'][4:-1]]\n\n# sort the URLs in time order\ns3_urls2.sort()\n\n# 3) Autenticate AWS S3 credentials\ns3 = s3fs.S3FileSystem(\n key=creds['AccessKeyId'],\n secret=creds['SecretAccessKey'],\n token=creds['SessionToken'],\n client_kwargs={'region_name':'us-west-2'},\n)\n\n# 4) Read and concatenate into a single Zarr dataset\ntemp_ds = xr.concat([xr.open_zarr(s3.get_mapper(u)) for u in s3_urls2], dim=\"time\", coords='minimal')\n#temp_ds_group = xr.concat([xr.open_zarr(s3.get_mapper(u)) for u in s3_urls2], dim=\"time\", coords='minimal').groupby('time.month')\n\ntemp_ds\n\nThe job has completed successfully. Contains results in AWS S3. Access from AWS us-west-2 with keys from https://harmony.earthdata.nasa.gov/cloud-access.sh\ndict_keys(['AccessKeyId', 'SecretAccessKey', 'SessionToken', 'Expiration'])\nAWS credentials expire on: 2022-05-03T08:48:44.000Z\nroot directory: s3://harmony-prod-staging/public/harmony/netcdf-to-zarr/9dd5c9b3-84c4-48e5-907d-2bd21d92a60c/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 193, Z: 50, latitude: 360, longitude: 720, nv: 2)\nCoordinates:\n * Z (Z) float32 -5.0 -15.0 -25.0 ... -5.461e+03 -5.906e+03\n Z_bnds (Z, nv) float32 nan -10.0 -10.0 ... -5.678e+03 -6.134e+03\n * latitude (latitude) float32 -89.75 -89.25 -88.75 ... 89.25 89.75\n latitude_bnds (latitude, nv) float32 -90.0 -89.5 -89.5 ... 89.5 89.5 90.0\n * longitude (longitude) float32 -179.8 -179.2 -178.8 ... 179.2 179.8\n longitude_bnds (longitude, nv) float32 -180.0 -179.5 -179.5 ... 179.5 180.0\n * time (time) datetime64[ns] 2001-12-16T12:00:00 ... 2017-12-16T...\n time_bnds (time, nv) datetime64[ns] dask.array<chunksize=(1, 2), meta=np.ndarray>\nDimensions without coordinates: nv\nData variables:\n SALT (time, Z, latitude, longitude) float32 dask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\n THETA (time, Z, latitude, longitude) float32 dask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.8, ACDD-1.3\n acknowledgement: This research was carried out by the Jet...\n author: Ian Fenty and Ou Wang\n cdm_data_type: Grid\n comment: Fields provided on a regular lat-lon gri...\n coordinates_comment: Note: the global 'coordinates' attribute...\n ... ...\n time_coverage_duration: P1M\n time_coverage_end: 2002-01-01T00:00:00\n time_coverage_resolution: P1M\n time_coverage_start: 2001-12-01T00:00:00\n title: ECCO Ocean Temperature and Salinity - Mo...\n uuid: 7f718714-4159-11eb-8bbd-0cc47a3f819bxarray.DatasetDimensions:time: 193Z: 50latitude: 360longitude: 720nv: 2Coordinates: (8)Z(Z)float32-5.0 -15.0 ... -5.906e+03axis :Zbounds :Z_bndscomment :Non-uniform vertical spacing.coverage_content_type :coordinatelong_name :depth of grid cell centerpositive :upstandard_name :depthunits :marray([-5.000000e+00, -1.500000e+01, -2.500000e+01, -3.500000e+01,\n -4.500000e+01, -5.500000e+01, -6.500000e+01, -7.500500e+01,\n -8.502500e+01, -9.509500e+01, -1.053100e+02, -1.158700e+02,\n -1.271500e+02, -1.397400e+02, -1.544700e+02, -1.724000e+02,\n -1.947350e+02, -2.227100e+02, -2.574700e+02, -2.999300e+02,\n -3.506800e+02, -4.099300e+02, -4.774700e+02, -5.527100e+02,\n -6.347350e+02, -7.224000e+02, -8.144700e+02, -9.097400e+02,\n -1.007155e+03, -1.105905e+03, -1.205535e+03, -1.306205e+03,\n -1.409150e+03, -1.517095e+03, -1.634175e+03, -1.765135e+03,\n -1.914150e+03, -2.084035e+03, -2.276225e+03, -2.491250e+03,\n -2.729250e+03, -2.990250e+03, -3.274250e+03, -3.581250e+03,\n -3.911250e+03, -4.264250e+03, -4.640250e+03, -5.039250e+03,\n -5.461250e+03, -5.906250e+03], dtype=float32)Z_bnds(Z, nv)float32nan -10.0 ... -5.678e+03 -6.134e+03comment :One pair of bounds for each vertical level.coverage_content_type :coordinatelong_name :depths of grid cell upper and lower interfacesarray([[ nan, -10. ],\n [ -10. , -20. ],\n [ -20. , -30. ],\n [ -30. , -40. ],\n [ -40. , -50. ],\n [ -50. , -60. ],\n [ -60. , -70. ],\n [ -70. , -80.01 ],\n [ -80.01 , -90.04 ],\n [ -90.04 , -100.15 ],\n [ -100.15 , -110.47 ],\n [ -110.47 , -121.270004],\n [ -121.270004, -133.03 ],\n [ -133.03 , -146.45 ],\n [ -146.45 , -162.48999 ],\n [ -162.48999 , -182.31 ],\n [ -182.31 , -207.16 ],\n [ -207.16 , -238.26001 ],\n [ -238.26001 , -276.68 ],\n [ -276.68 , -323.18 ],\n...\n [-1155.53 , -1255.54 ],\n [-1255.54 , -1356.87 ],\n [-1356.87 , -1461.4299 ],\n [-1461.4299 , -1572.7599 ],\n [-1572.7599 , -1695.5898 ],\n [-1695.5898 , -1834.6798 ],\n [-1834.6798 , -1993.6199 ],\n [-1993.6199 , -2174.45 ],\n [-2174.45 , -2378. ],\n [-2378. , -2604.5 ],\n [-2604.5 , -2854. ],\n [-2854. , -3126.5 ],\n [-3126.5 , -3422. ],\n [-3422. , -3740.5 ],\n [-3740.5 , -4082. ],\n [-4082. , -4446.5 ],\n [-4446.5 , -4834. ],\n [-4834. , -5244.5 ],\n [-5244.5 , -5678. ],\n [-5678. , -6134.5 ]], dtype=float32)latitude(latitude)float32-89.75 -89.25 ... 89.25 89.75axis :Ybounds :latitude_bndscomment :uniform grid spacing from -89.75 to 89.75 by 0.5coverage_content_type :coordinatelong_name :latitude at grid cell centerstandard_name :latitudeunits :degrees_northarray([-89.75, -89.25, -88.75, ..., 88.75, 89.25, 89.75], dtype=float32)latitude_bnds(latitude, nv)float32-90.0 -89.5 -89.5 ... 89.5 90.0coverage_content_type :coordinatelong_name :latitude bounds grid cellsarray([[-90. , -89.5],\n [-89.5, -89. ],\n [-89. , -88.5],\n [-88.5, -88. ],\n [-88. , -87.5],\n [-87.5, -87. ],\n [-87. , -86.5],\n [-86.5, -86. ],\n [-86. , -85.5],\n [-85.5, -85. ],\n [-85. , -84.5],\n [-84.5, -84. ],\n [-84. , -83.5],\n [-83.5, -83. ],\n [-83. , -82.5],\n [-82.5, -82. ],\n [-82. , -81.5],\n [-81.5, -81. ],\n [-81. , -80.5],\n [-80.5, -80. ],\n...\n [ 80. , 80.5],\n [ 80.5, 81. ],\n [ 81. , 81.5],\n [ 81.5, 82. ],\n [ 82. , 82.5],\n [ 82.5, 83. ],\n [ 83. , 83.5],\n [ 83.5, 84. ],\n [ 84. , 84.5],\n [ 84.5, 85. ],\n [ 85. , 85.5],\n [ 85.5, 86. ],\n [ 86. , 86.5],\n [ 86.5, 87. ],\n [ 87. , 87.5],\n [ 87.5, 88. ],\n [ 88. , 88.5],\n [ 88.5, 89. ],\n [ 89. , 89.5],\n [ 89.5, 90. ]], dtype=float32)longitude(longitude)float32-179.8 -179.2 ... 179.2 179.8axis :Xbounds :longitude_bndscomment :uniform grid spacing from -179.75 to 179.75 by 0.5coverage_content_type :coordinatelong_name :longitude at grid cell centerstandard_name :longitudeunits :degrees_eastarray([-179.75, -179.25, -178.75, ..., 178.75, 179.25, 179.75],\n dtype=float32)longitude_bnds(longitude, nv)float32-180.0 -179.5 ... 179.5 180.0coverage_content_type :coordinatelong_name :longitude bounds grid cellsarray([[-180. , -179.5],\n [-179.5, -179. ],\n [-179. , -178.5],\n ...,\n [ 178.5, 179. ],\n [ 179. , 179.5],\n [ 179.5, 180. ]], dtype=float32)time(time)datetime64[ns]2001-12-16T12:00:00 ... 2017-12-...axis :Tbounds :time_bndscoverage_content_type :coordinatelong_name :center time of averaging periodstandard_name :timearray(['2001-12-16T12:00:00.000000000', '2002-01-16T12:00:00.000000000',\n '2002-02-15T00:00:00.000000000', '2002-03-16T12:00:00.000000000',\n '2002-04-16T00:00:00.000000000', '2002-05-16T12:00:00.000000000',\n '2002-06-16T00:00:00.000000000', '2002-07-16T12:00:00.000000000',\n '2002-08-16T12:00:00.000000000', '2002-09-16T00:00:00.000000000',\n '2002-10-16T12:00:00.000000000', '2002-11-16T00:00:00.000000000',\n '2002-12-16T12:00:00.000000000', '2003-01-16T12:00:00.000000000',\n '2003-02-15T00:00:00.000000000', '2003-03-16T12:00:00.000000000',\n '2003-04-16T00:00:00.000000000', '2003-05-16T12:00:00.000000000',\n '2003-06-16T00:00:00.000000000', '2003-07-16T12:00:00.000000000',\n '2003-08-16T12:00:00.000000000', '2003-09-16T00:00:00.000000000',\n '2003-10-16T12:00:00.000000000', '2003-11-16T00:00:00.000000000',\n '2003-12-16T12:00:00.000000000', '2004-01-16T12:00:00.000000000',\n '2004-02-15T12:00:00.000000000', '2004-03-16T12:00:00.000000000',\n '2004-04-16T00:00:00.000000000', '2004-05-16T12:00:00.000000000',\n '2004-06-16T00:00:00.000000000', '2004-07-16T12:00:00.000000000',\n '2004-08-16T12:00:00.000000000', '2004-09-16T00:00:00.000000000',\n '2004-10-16T12:00:00.000000000', '2004-11-16T00:00:00.000000000',\n '2004-12-16T12:00:00.000000000', '2005-01-16T12:00:00.000000000',\n '2005-02-15T00:00:00.000000000', '2005-03-16T12:00:00.000000000',\n '2005-04-16T00:00:00.000000000', '2005-05-16T12:00:00.000000000',\n '2005-06-16T00:00:00.000000000', '2005-07-16T12:00:00.000000000',\n '2005-08-16T12:00:00.000000000', '2005-09-16T00:00:00.000000000',\n '2005-10-16T12:00:00.000000000', '2005-11-16T00:00:00.000000000',\n '2005-12-16T12:00:00.000000000', '2006-01-16T12:00:00.000000000',\n '2006-02-15T00:00:00.000000000', '2006-03-16T12:00:00.000000000',\n '2006-04-16T00:00:00.000000000', '2006-05-16T12:00:00.000000000',\n '2006-06-16T00:00:00.000000000', '2006-07-16T12:00:00.000000000',\n '2006-08-16T12:00:00.000000000', '2006-09-16T00:00:00.000000000',\n '2006-10-16T12:00:00.000000000', '2006-11-16T00:00:00.000000000',\n '2006-12-16T12:00:00.000000000', '2007-01-16T12:00:00.000000000',\n '2007-02-15T00:00:00.000000000', '2007-03-16T12:00:00.000000000',\n '2007-04-16T00:00:00.000000000', '2007-05-16T12:00:00.000000000',\n '2007-06-16T00:00:00.000000000', '2007-07-16T12:00:00.000000000',\n '2007-08-16T12:00:00.000000000', '2007-09-16T00:00:00.000000000',\n '2007-10-16T12:00:00.000000000', '2007-11-16T00:00:00.000000000',\n '2007-12-16T12:00:00.000000000', '2008-01-16T12:00:00.000000000',\n '2008-02-15T12:00:00.000000000', '2008-03-16T12:00:00.000000000',\n '2008-04-16T00:00:00.000000000', '2008-05-16T12:00:00.000000000',\n '2008-06-16T00:00:00.000000000', '2008-07-16T12:00:00.000000000',\n '2008-08-16T12:00:00.000000000', '2008-09-16T00:00:00.000000000',\n '2008-10-16T12:00:00.000000000', '2008-11-16T00:00:00.000000000',\n '2008-12-16T12:00:00.000000000', '2009-01-16T12:00:00.000000000',\n '2009-02-15T00:00:00.000000000', '2009-03-16T12:00:00.000000000',\n '2009-04-16T00:00:00.000000000', '2009-05-16T12:00:00.000000000',\n '2009-06-16T00:00:00.000000000', '2009-07-16T12:00:00.000000000',\n '2009-08-16T12:00:00.000000000', '2009-09-16T00:00:00.000000000',\n '2009-10-16T12:00:00.000000000', '2009-11-16T00:00:00.000000000',\n '2009-12-16T12:00:00.000000000', '2010-01-16T12:00:00.000000000',\n '2010-02-15T00:00:00.000000000', '2010-03-16T12:00:00.000000000',\n '2010-04-16T00:00:00.000000000', '2010-05-16T12:00:00.000000000',\n '2010-06-16T00:00:00.000000000', '2010-07-16T12:00:00.000000000',\n '2010-08-16T12:00:00.000000000', '2010-09-16T00:00:00.000000000',\n '2010-10-16T12:00:00.000000000', '2010-11-16T00:00:00.000000000',\n '2010-12-16T12:00:00.000000000', '2011-01-16T12:00:00.000000000',\n '2011-02-15T00:00:00.000000000', '2011-03-16T12:00:00.000000000',\n '2011-04-16T00:00:00.000000000', '2011-05-16T12:00:00.000000000',\n '2011-06-16T00:00:00.000000000', '2011-07-16T12:00:00.000000000',\n '2011-08-16T12:00:00.000000000', '2011-09-16T00:00:00.000000000',\n '2011-10-16T12:00:00.000000000', '2011-11-16T00:00:00.000000000',\n '2011-12-16T12:00:00.000000000', '2012-01-16T12:00:00.000000000',\n '2012-02-15T12:00:00.000000000', '2012-03-16T12:00:00.000000000',\n '2012-04-16T00:00:00.000000000', '2012-05-16T12:00:00.000000000',\n '2012-06-16T00:00:00.000000000', '2012-07-16T12:00:00.000000000',\n '2012-08-16T12:00:00.000000000', '2012-09-16T00:00:00.000000000',\n '2012-10-16T12:00:00.000000000', '2012-11-16T00:00:00.000000000',\n '2012-12-16T12:00:00.000000000', '2013-01-16T12:00:00.000000000',\n '2013-02-15T00:00:00.000000000', '2013-03-16T12:00:00.000000000',\n '2013-04-16T00:00:00.000000000', '2013-05-16T12:00:00.000000000',\n '2013-06-16T00:00:00.000000000', '2013-07-16T12:00:00.000000000',\n '2013-08-16T12:00:00.000000000', '2013-09-16T00:00:00.000000000',\n '2013-10-16T12:00:00.000000000', '2013-11-16T00:00:00.000000000',\n '2013-12-16T12:00:00.000000000', '2014-01-16T12:00:00.000000000',\n '2014-02-15T00:00:00.000000000', '2014-03-16T12:00:00.000000000',\n '2014-04-16T00:00:00.000000000', '2014-05-16T12:00:00.000000000',\n '2014-06-16T00:00:00.000000000', '2014-07-16T12:00:00.000000000',\n '2014-08-16T12:00:00.000000000', '2014-09-16T00:00:00.000000000',\n '2014-10-16T12:00:00.000000000', '2014-11-16T00:00:00.000000000',\n '2014-12-16T12:00:00.000000000', '2015-01-16T12:00:00.000000000',\n '2015-02-15T00:00:00.000000000', '2015-03-16T12:00:00.000000000',\n '2015-04-16T00:00:00.000000000', '2015-05-16T12:00:00.000000000',\n '2015-06-16T00:00:00.000000000', '2015-07-16T12:00:00.000000000',\n '2015-08-16T12:00:00.000000000', '2015-09-16T00:00:00.000000000',\n '2015-10-16T12:00:00.000000000', '2015-11-16T00:00:00.000000000',\n '2015-12-16T12:00:00.000000000', '2016-01-16T12:00:00.000000000',\n '2016-02-15T12:00:00.000000000', '2016-03-16T12:00:00.000000000',\n '2016-04-16T00:00:00.000000000', '2016-05-16T12:00:00.000000000',\n '2016-06-16T00:00:00.000000000', '2016-07-16T12:00:00.000000000',\n '2016-08-16T12:00:00.000000000', '2016-09-16T00:00:00.000000000',\n '2016-10-16T12:00:00.000000000', '2016-11-16T00:00:00.000000000',\n '2016-12-16T12:00:00.000000000', '2017-01-16T12:00:00.000000000',\n '2017-02-15T00:00:00.000000000', '2017-03-16T12:00:00.000000000',\n '2017-04-16T00:00:00.000000000', '2017-05-16T12:00:00.000000000',\n '2017-06-16T00:00:00.000000000', '2017-07-16T12:00:00.000000000',\n '2017-08-16T12:00:00.000000000', '2017-09-16T00:00:00.000000000',\n '2017-10-16T12:00:00.000000000', '2017-11-16T00:00:00.000000000',\n '2017-12-16T06:00:00.000000000'], dtype='datetime64[ns]')time_bnds(time, nv)datetime64[ns]dask.array<chunksize=(1, 2), meta=np.ndarray>comment :Start and end times of averaging period.coverage_content_type :coordinatelong_name :time bounds of averaging period\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.02 kiB\n16 B\n\n\nShape\n(193, 2)\n(1, 2)\n\n\nCount\n579 Tasks\n193 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2 193\n\n\n\n\n\n\n\n\n\n\n\nData variables: (2)\n\n\n\n\n\n\n\nSALT\n\n\n(time, Z, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDefined using CF convention 'Sea water salinity is the salt content of sea water, often on the Practical Salinity Scale of 1978. However, the unqualified term 'salinity' is generic and does not necessarily imply any particular method of calculation. The units of salinity are dimensionless and the units attribute should normally be given as 1e-3 or 0.001 i.e. parts per thousand.' see https://cfconventions.org/Data/cf-standard-names/73/build/cf-standard-name-table.html\n\ncoverage_content_type :\n\nmodelResult\n\nlong_name :\n\nSalinity\n\nstandard_name :\n\nsea_water_salinity\n\nunits :\n\n1e-3\n\nvalid_max :\n\n41.26802444458008\n\nvalid_min :\n\n17.106637954711914\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.32 GiB\n14.95 MiB\n\n\nShape\n(193, 50, 360, 720)\n(1, 50, 280, 280)\n\n\nCount\n2509 Tasks\n1158 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 193 1 720 360 50\n\n\n\n\n\n\n\n\nTHETA\n\n\n(time, Z, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea water potential temperature is the temperature a parcel of sea water would have if moved adiabatically to sea level pressure. Note: the equation of state is a modified UNESCO formula by Jackett and McDougall (1995), which uses the model variable potential temperature as input assuming a horizontally and temporally constant pressure of $p_0=-g ho_{0} z$.\n\ncoverage_content_type :\n\nmodelResult\n\nlong_name :\n\nPotential temperature\n\nstandard_name :\n\nsea_water_potential_temperature\n\nunits :\n\ndegree_C\n\nvalid_max :\n\n36.032955169677734\n\nvalid_min :\n\n-2.2909388542175293\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.32 GiB\n14.95 MiB\n\n\nShape\n(193, 50, 360, 720)\n(1, 50, 280, 280)\n\n\nCount\n2509 Tasks\n1158 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 193 1 720 360 50\n\n\n\n\n\n\nAttributes: (62)Conventions :CF-1.8, ACDD-1.3acknowledgement :This research was carried out by the Jet Propulsion Laboratory, managed by the California Institute of Technology under a contract with the National Aeronautics and Space Administration.author :Ian Fenty and Ou Wangcdm_data_type :Gridcomment :Fields provided on a regular lat-lon grid. They have been mapped to the regular lat-lon grid from the original ECCO lat-lon-cap 90 (llc90) native model grid.coordinates_comment :Note: the global 'coordinates' attribute describes auxillary coordinates.creator_email :ecco-group@mit.educreator_institution :NASA Jet Propulsion Laboratory (JPL)creator_name :ECCO Consortiumcreator_type :groupcreator_url :https://ecco-group.orgdate_created :2020-12-18T09:50:20date_issued :2020-12-18T09:50:20date_metadata_modified :2021-03-15T22:06:59date_modified :2021-03-15T22:06:59geospatial_bounds_crs :EPSG:4326geospatial_lat_max :90.0geospatial_lat_min :-90.0geospatial_lat_resolution :0.5geospatial_lat_units :degrees_northgeospatial_lon_max :180.0geospatial_lon_min :-180.0geospatial_lon_resolution :0.5geospatial_lon_units :degrees_eastgeospatial_vertical_max :0.0geospatial_vertical_min :-6134.5geospatial_vertical_positive :upgeospatial_vertical_resolution :variablegeospatial_vertical_units :meterhistory :Inaugural release of an ECCO Central Estimate solution to PO.DAACid :10.5067/ECG5M-OTS44institution :NASA Jet Propulsion Laboratory (JPL)instrument_vocabulary :GCMD instrument keywordskeywords :EARTH SCIENCE SERVICES > MODELS > EARTH SCIENCE REANALYSES/ASSIMILATION MODELS, EARTH SCIENCE > OCEANS > SALINITY/DENSITY > SALINITY, EARTH SCIENCE > OCEANS > OCEAN TEMPERATURE > POTENTIAL TEMPERATUREkeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordslicense :Public Domainmetadata_link :https://cmr.earthdata.nasa.gov/search/collections.umm_json?ShortName=ECCO_L4_TEMP_SALINITY_05DEG_MONTHLY_V4R4naming_authority :gov.nasa.jplplatform :ERS-1/2, TOPEX/Poseidon, Geosat Follow-On (GFO), ENVISAT, Jason-1, Jason-2, CryoSat-2, SARAL/AltiKa, Jason-3, AVHRR, Aquarius, SSM/I, SSMIS, GRACE, DTU17MDT, Argo, WOCE, GO-SHIP, MEOP, Ice Tethered Profilers (ITP)platform_vocabulary :GCMD platform keywordsprocessing_level :L4product_name :OCEAN_TEMPERATURE_SALINITY_mon_mean_2001-12_ECCO_V4r4_latlon_0p50deg.ncproduct_time_coverage_end :2018-01-01T00:00:00product_time_coverage_start :1992-01-01T12:00:00product_version :Version 4, Release 4program :NASA Physical Oceanography, Cryosphere, Modeling, Analysis, and Prediction (MAP)project :Estimating the Circulation and Climate of the Ocean (ECCO)publisher_email :podaac@podaac.jpl.nasa.govpublisher_institution :PO.DAACpublisher_name :Physical Oceanography Distributed Active Archive Center (PO.DAAC)publisher_type :institutionpublisher_url :https://podaac.jpl.nasa.govreferences :ECCO Consortium, Fukumori, I., Wang, O., Fenty, I., Forget, G., Heimbach, P., & Ponte, R. M. 2020. Synopsis of the ECCO Central Production Global Ocean and Sea-Ice State Estimate (Version 4 Release 4). doi:10.5281/zenodo.3765928source :The ECCO V4r4 state estimate was produced by fitting a free-running solution of the MITgcm (checkpoint 66g) to satellite and in situ observational data in a least squares sense using the adjoint methodstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsummary :This dataset provides monthly-averaged ocean potential temperature and salinity interpolated to a regular 0.5-degree grid from the ECCO Version 4 Release 4 (V4r4) ocean and sea-ice state estimate. Estimating the Circulation and Climate of the Ocean (ECCO) state estimates are dynamically and kinematically-consistent reconstructions of the three-dimensional, time-evolving ocean, sea-ice, and surface atmospheric states. ECCO V4r4 is a free-running solution of a global, nominally 1-degree configuration of the MIT general circulation model (MITgcm) that has been fit to observations in a least-squares sense. Observational data constraints used in V4r4 include sea surface height (SSH) from satellite altimeters [ERS-1/2, TOPEX/Poseidon, GFO, ENVISAT, Jason-1,2,3, CryoSat-2, and SARAL/AltiKa]; sea surface temperature (SST) from satellite radiometers [AVHRR], sea surface salinity (SSS) from the Aquarius satellite radiometer/scatterometer, ocean bottom pressure (OBP) from the GRACE satellite gravimeter; sea-ice concentration from satellite radiometers [SSM/I and SSMIS], and in-situ ocean temperature and salinity measured with conductivity-temperature-depth (CTD) sensors and expendable bathythermographs (XBTs) from several programs [e.g., WOCE, GO-SHIP, Argo, and others] and platforms [e.g., research vessels, gliders, moorings, ice-tethered profilers, and instrumented pinnipeds]. V4r4 covers the period 1992-01-01T12:00:00 to 2018-01-01T00:00:00.time_coverage_duration :P1Mtime_coverage_end :2002-01-01T00:00:00time_coverage_resolution :P1Mtime_coverage_start :2001-12-01T00:00:00title :ECCO Ocean Temperature and Salinity - Monthly Mean 0.5 Degree (Version 4 Release 4)uuid :7f718714-4159-11eb-8bbd-0cc47a3f819b", + "text": "Read the S3 Zarr endpoints and aggregate to single Zarr\n\n# 1) read the AWS credentials\nprint(ecco_response['message'])\nwith requests.get(ecco_response['links'][2]['href']) as r:\n creds = r.json()\n\nprint( creds.keys() )\nprint(\"AWS credentials expire on: \", creds['Expiration'] )\n\n\n# 2) print root directory and read the s3 URLs into a list\ns3_dir2 = ecco_response['links'][3]['href']\nprint(\"root directory:\", s3_dir2)\ns3_urls2 = [u['href'] for u in ecco_response['links'][4:-1]]\n\n# sort the URLs in time order\ns3_urls2.sort()\n\n# 3) Autenticate AWS S3 credentials\ns3 = s3fs.S3FileSystem(\n key=creds['AccessKeyId'],\n secret=creds['SecretAccessKey'],\n token=creds['SessionToken'],\n client_kwargs={'region_name':'us-west-2'},\n)\n\n# 4) Read and concatenate into a single Zarr dataset\ntemp_ds = xr.concat([xr.open_zarr(s3.get_mapper(u)) for u in s3_urls2], dim=\"time\", coords='minimal')\n#temp_ds_group = xr.concat([xr.open_zarr(s3.get_mapper(u)) for u in s3_urls2], dim=\"time\", coords='minimal').groupby('time.month')\n\ntemp_ds\n\nThe job has completed successfully. Contains results in AWS S3. Access from AWS us-west-2 with keys from https://harmony.earthdata.nasa.gov/cloud-access.sh\ndict_keys(['AccessKeyId', 'SecretAccessKey', 'SessionToken', 'Expiration'])\nAWS credentials expire on: 2022-05-03T08:48:44.000Z\nroot directory: s3://harmony-prod-staging/public/harmony/netcdf-to-zarr/9dd5c9b3-84c4-48e5-907d-2bd21d92a60c/\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 193, Z: 50, latitude: 360, longitude: 720, nv: 2)\nCoordinates:\n * Z (Z) float32 -5.0 -15.0 -25.0 ... -5.461e+03 -5.906e+03\n Z_bnds (Z, nv) float32 nan -10.0 -10.0 ... -5.678e+03 -6.134e+03\n * latitude (latitude) float32 -89.75 -89.25 -88.75 ... 89.25 89.75\n latitude_bnds (latitude, nv) float32 -90.0 -89.5 -89.5 ... 89.5 89.5 90.0\n * longitude (longitude) float32 -179.8 -179.2 -178.8 ... 179.2 179.8\n longitude_bnds (longitude, nv) float32 -180.0 -179.5 -179.5 ... 179.5 180.0\n * time (time) datetime64[ns] 2001-12-16T12:00:00 ... 2017-12-16T...\n time_bnds (time, nv) datetime64[ns] dask.array<chunksize=(1, 2), meta=np.ndarray>\nDimensions without coordinates: nv\nData variables:\n SALT (time, Z, latitude, longitude) float32 dask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\n THETA (time, Z, latitude, longitude) float32 dask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.8, ACDD-1.3\n acknowledgement: This research was carried out by the Jet...\n author: Ian Fenty and Ou Wang\n cdm_data_type: Grid\n comment: Fields provided on a regular lat-lon gri...\n coordinates_comment: Note: the global 'coordinates' attribute...\n ... ...\n time_coverage_duration: P1M\n time_coverage_end: 2002-01-01T00:00:00\n time_coverage_resolution: P1M\n time_coverage_start: 2001-12-01T00:00:00\n title: ECCO Ocean Temperature and Salinity - Mo...\n uuid: 7f718714-4159-11eb-8bbd-0cc47a3f819bxarray.DatasetDimensions:time: 193Z: 50latitude: 360longitude: 720nv: 2Coordinates: (8)Z(Z)float32-5.0 -15.0 ... -5.906e+03axis :Zbounds :Z_bndscomment :Non-uniform vertical spacing.coverage_content_type :coordinatelong_name :depth of grid cell centerpositive :upstandard_name :depthunits :marray([-5.000000e+00, -1.500000e+01, -2.500000e+01, -3.500000e+01,\n -4.500000e+01, -5.500000e+01, -6.500000e+01, -7.500500e+01,\n -8.502500e+01, -9.509500e+01, -1.053100e+02, -1.158700e+02,\n -1.271500e+02, -1.397400e+02, -1.544700e+02, -1.724000e+02,\n -1.947350e+02, -2.227100e+02, -2.574700e+02, -2.999300e+02,\n -3.506800e+02, -4.099300e+02, -4.774700e+02, -5.527100e+02,\n -6.347350e+02, -7.224000e+02, -8.144700e+02, -9.097400e+02,\n -1.007155e+03, -1.105905e+03, -1.205535e+03, -1.306205e+03,\n -1.409150e+03, -1.517095e+03, -1.634175e+03, -1.765135e+03,\n -1.914150e+03, -2.084035e+03, -2.276225e+03, -2.491250e+03,\n -2.729250e+03, -2.990250e+03, -3.274250e+03, -3.581250e+03,\n -3.911250e+03, -4.264250e+03, -4.640250e+03, -5.039250e+03,\n -5.461250e+03, -5.906250e+03], dtype=float32)Z_bnds(Z, nv)float32nan -10.0 ... -5.678e+03 -6.134e+03comment :One pair of bounds for each vertical level.coverage_content_type :coordinatelong_name :depths of grid cell upper and lower interfacesarray([[ nan, -10. ],\n [ -10. , -20. ],\n [ -20. , -30. ],\n [ -30. , -40. ],\n [ -40. , -50. ],\n [ -50. , -60. ],\n [ -60. , -70. ],\n [ -70. , -80.01 ],\n [ -80.01 , -90.04 ],\n [ -90.04 , -100.15 ],\n [ -100.15 , -110.47 ],\n [ -110.47 , -121.270004],\n [ -121.270004, -133.03 ],\n [ -133.03 , -146.45 ],\n [ -146.45 , -162.48999 ],\n [ -162.48999 , -182.31 ],\n [ -182.31 , -207.16 ],\n [ -207.16 , -238.26001 ],\n [ -238.26001 , -276.68 ],\n [ -276.68 , -323.18 ],\n...\n [-1155.53 , -1255.54 ],\n [-1255.54 , -1356.87 ],\n [-1356.87 , -1461.4299 ],\n [-1461.4299 , -1572.7599 ],\n [-1572.7599 , -1695.5898 ],\n [-1695.5898 , -1834.6798 ],\n [-1834.6798 , -1993.6199 ],\n [-1993.6199 , -2174.45 ],\n [-2174.45 , -2378. ],\n [-2378. , -2604.5 ],\n [-2604.5 , -2854. ],\n [-2854. , -3126.5 ],\n [-3126.5 , -3422. ],\n [-3422. , -3740.5 ],\n [-3740.5 , -4082. ],\n [-4082. , -4446.5 ],\n [-4446.5 , -4834. ],\n [-4834. , -5244.5 ],\n [-5244.5 , -5678. ],\n [-5678. , -6134.5 ]], dtype=float32)latitude(latitude)float32-89.75 -89.25 ... 89.25 89.75axis :Ybounds :latitude_bndscomment :uniform grid spacing from -89.75 to 89.75 by 0.5coverage_content_type :coordinatelong_name :latitude at grid cell centerstandard_name :latitudeunits :degrees_northarray([-89.75, -89.25, -88.75, ..., 88.75, 89.25, 89.75], dtype=float32)latitude_bnds(latitude, nv)float32-90.0 -89.5 -89.5 ... 89.5 90.0coverage_content_type :coordinatelong_name :latitude bounds grid cellsarray([[-90. , -89.5],\n [-89.5, -89. ],\n [-89. , -88.5],\n [-88.5, -88. ],\n [-88. , -87.5],\n [-87.5, -87. ],\n [-87. , -86.5],\n [-86.5, -86. ],\n [-86. , -85.5],\n [-85.5, -85. ],\n [-85. , -84.5],\n [-84.5, -84. ],\n [-84. , -83.5],\n [-83.5, -83. ],\n [-83. , -82.5],\n [-82.5, -82. ],\n [-82. , -81.5],\n [-81.5, -81. ],\n [-81. , -80.5],\n [-80.5, -80. ],\n...\n [ 80. , 80.5],\n [ 80.5, 81. ],\n [ 81. , 81.5],\n [ 81.5, 82. ],\n [ 82. , 82.5],\n [ 82.5, 83. ],\n [ 83. , 83.5],\n [ 83.5, 84. ],\n [ 84. , 84.5],\n [ 84.5, 85. ],\n [ 85. , 85.5],\n [ 85.5, 86. ],\n [ 86. , 86.5],\n [ 86.5, 87. ],\n [ 87. , 87.5],\n [ 87.5, 88. ],\n [ 88. , 88.5],\n [ 88.5, 89. ],\n [ 89. , 89.5],\n [ 89.5, 90. ]], dtype=float32)longitude(longitude)float32-179.8 -179.2 ... 179.2 179.8axis :Xbounds :longitude_bndscomment :uniform grid spacing from -179.75 to 179.75 by 0.5coverage_content_type :coordinatelong_name :longitude at grid cell centerstandard_name :longitudeunits :degrees_eastarray([-179.75, -179.25, -178.75, ..., 178.75, 179.25, 179.75],\n dtype=float32)longitude_bnds(longitude, nv)float32-180.0 -179.5 ... 179.5 180.0coverage_content_type :coordinatelong_name :longitude bounds grid cellsarray([[-180. , -179.5],\n [-179.5, -179. ],\n [-179. , -178.5],\n ...,\n [ 178.5, 179. ],\n [ 179. , 179.5],\n [ 179.5, 180. ]], dtype=float32)time(time)datetime64[ns]2001-12-16T12:00:00 ... 2017-12-...axis :Tbounds :time_bndscoverage_content_type :coordinatelong_name :center time of averaging periodstandard_name :timearray(['2001-12-16T12:00:00.000000000', '2002-01-16T12:00:00.000000000',\n '2002-02-15T00:00:00.000000000', '2002-03-16T12:00:00.000000000',\n '2002-04-16T00:00:00.000000000', '2002-05-16T12:00:00.000000000',\n '2002-06-16T00:00:00.000000000', '2002-07-16T12:00:00.000000000',\n '2002-08-16T12:00:00.000000000', '2002-09-16T00:00:00.000000000',\n '2002-10-16T12:00:00.000000000', '2002-11-16T00:00:00.000000000',\n '2002-12-16T12:00:00.000000000', '2003-01-16T12:00:00.000000000',\n '2003-02-15T00:00:00.000000000', '2003-03-16T12:00:00.000000000',\n '2003-04-16T00:00:00.000000000', '2003-05-16T12:00:00.000000000',\n '2003-06-16T00:00:00.000000000', '2003-07-16T12:00:00.000000000',\n '2003-08-16T12:00:00.000000000', '2003-09-16T00:00:00.000000000',\n '2003-10-16T12:00:00.000000000', '2003-11-16T00:00:00.000000000',\n '2003-12-16T12:00:00.000000000', '2004-01-16T12:00:00.000000000',\n '2004-02-15T12:00:00.000000000', '2004-03-16T12:00:00.000000000',\n '2004-04-16T00:00:00.000000000', '2004-05-16T12:00:00.000000000',\n '2004-06-16T00:00:00.000000000', '2004-07-16T12:00:00.000000000',\n '2004-08-16T12:00:00.000000000', '2004-09-16T00:00:00.000000000',\n '2004-10-16T12:00:00.000000000', '2004-11-16T00:00:00.000000000',\n '2004-12-16T12:00:00.000000000', '2005-01-16T12:00:00.000000000',\n '2005-02-15T00:00:00.000000000', '2005-03-16T12:00:00.000000000',\n '2005-04-16T00:00:00.000000000', '2005-05-16T12:00:00.000000000',\n '2005-06-16T00:00:00.000000000', '2005-07-16T12:00:00.000000000',\n '2005-08-16T12:00:00.000000000', '2005-09-16T00:00:00.000000000',\n '2005-10-16T12:00:00.000000000', '2005-11-16T00:00:00.000000000',\n '2005-12-16T12:00:00.000000000', '2006-01-16T12:00:00.000000000',\n '2006-02-15T00:00:00.000000000', '2006-03-16T12:00:00.000000000',\n '2006-04-16T00:00:00.000000000', '2006-05-16T12:00:00.000000000',\n '2006-06-16T00:00:00.000000000', '2006-07-16T12:00:00.000000000',\n '2006-08-16T12:00:00.000000000', '2006-09-16T00:00:00.000000000',\n '2006-10-16T12:00:00.000000000', '2006-11-16T00:00:00.000000000',\n '2006-12-16T12:00:00.000000000', '2007-01-16T12:00:00.000000000',\n '2007-02-15T00:00:00.000000000', '2007-03-16T12:00:00.000000000',\n '2007-04-16T00:00:00.000000000', '2007-05-16T12:00:00.000000000',\n '2007-06-16T00:00:00.000000000', '2007-07-16T12:00:00.000000000',\n '2007-08-16T12:00:00.000000000', '2007-09-16T00:00:00.000000000',\n '2007-10-16T12:00:00.000000000', '2007-11-16T00:00:00.000000000',\n '2007-12-16T12:00:00.000000000', '2008-01-16T12:00:00.000000000',\n '2008-02-15T12:00:00.000000000', '2008-03-16T12:00:00.000000000',\n '2008-04-16T00:00:00.000000000', '2008-05-16T12:00:00.000000000',\n '2008-06-16T00:00:00.000000000', '2008-07-16T12:00:00.000000000',\n '2008-08-16T12:00:00.000000000', '2008-09-16T00:00:00.000000000',\n '2008-10-16T12:00:00.000000000', '2008-11-16T00:00:00.000000000',\n '2008-12-16T12:00:00.000000000', '2009-01-16T12:00:00.000000000',\n '2009-02-15T00:00:00.000000000', '2009-03-16T12:00:00.000000000',\n '2009-04-16T00:00:00.000000000', '2009-05-16T12:00:00.000000000',\n '2009-06-16T00:00:00.000000000', '2009-07-16T12:00:00.000000000',\n '2009-08-16T12:00:00.000000000', '2009-09-16T00:00:00.000000000',\n '2009-10-16T12:00:00.000000000', '2009-11-16T00:00:00.000000000',\n '2009-12-16T12:00:00.000000000', '2010-01-16T12:00:00.000000000',\n '2010-02-15T00:00:00.000000000', '2010-03-16T12:00:00.000000000',\n '2010-04-16T00:00:00.000000000', '2010-05-16T12:00:00.000000000',\n '2010-06-16T00:00:00.000000000', '2010-07-16T12:00:00.000000000',\n '2010-08-16T12:00:00.000000000', '2010-09-16T00:00:00.000000000',\n '2010-10-16T12:00:00.000000000', '2010-11-16T00:00:00.000000000',\n '2010-12-16T12:00:00.000000000', '2011-01-16T12:00:00.000000000',\n '2011-02-15T00:00:00.000000000', '2011-03-16T12:00:00.000000000',\n '2011-04-16T00:00:00.000000000', '2011-05-16T12:00:00.000000000',\n '2011-06-16T00:00:00.000000000', '2011-07-16T12:00:00.000000000',\n '2011-08-16T12:00:00.000000000', '2011-09-16T00:00:00.000000000',\n '2011-10-16T12:00:00.000000000', '2011-11-16T00:00:00.000000000',\n '2011-12-16T12:00:00.000000000', '2012-01-16T12:00:00.000000000',\n '2012-02-15T12:00:00.000000000', '2012-03-16T12:00:00.000000000',\n '2012-04-16T00:00:00.000000000', '2012-05-16T12:00:00.000000000',\n '2012-06-16T00:00:00.000000000', '2012-07-16T12:00:00.000000000',\n '2012-08-16T12:00:00.000000000', '2012-09-16T00:00:00.000000000',\n '2012-10-16T12:00:00.000000000', '2012-11-16T00:00:00.000000000',\n '2012-12-16T12:00:00.000000000', '2013-01-16T12:00:00.000000000',\n '2013-02-15T00:00:00.000000000', '2013-03-16T12:00:00.000000000',\n '2013-04-16T00:00:00.000000000', '2013-05-16T12:00:00.000000000',\n '2013-06-16T00:00:00.000000000', '2013-07-16T12:00:00.000000000',\n '2013-08-16T12:00:00.000000000', '2013-09-16T00:00:00.000000000',\n '2013-10-16T12:00:00.000000000', '2013-11-16T00:00:00.000000000',\n '2013-12-16T12:00:00.000000000', '2014-01-16T12:00:00.000000000',\n '2014-02-15T00:00:00.000000000', '2014-03-16T12:00:00.000000000',\n '2014-04-16T00:00:00.000000000', '2014-05-16T12:00:00.000000000',\n '2014-06-16T00:00:00.000000000', '2014-07-16T12:00:00.000000000',\n '2014-08-16T12:00:00.000000000', '2014-09-16T00:00:00.000000000',\n '2014-10-16T12:00:00.000000000', '2014-11-16T00:00:00.000000000',\n '2014-12-16T12:00:00.000000000', '2015-01-16T12:00:00.000000000',\n '2015-02-15T00:00:00.000000000', '2015-03-16T12:00:00.000000000',\n '2015-04-16T00:00:00.000000000', '2015-05-16T12:00:00.000000000',\n '2015-06-16T00:00:00.000000000', '2015-07-16T12:00:00.000000000',\n '2015-08-16T12:00:00.000000000', '2015-09-16T00:00:00.000000000',\n '2015-10-16T12:00:00.000000000', '2015-11-16T00:00:00.000000000',\n '2015-12-16T12:00:00.000000000', '2016-01-16T12:00:00.000000000',\n '2016-02-15T12:00:00.000000000', '2016-03-16T12:00:00.000000000',\n '2016-04-16T00:00:00.000000000', '2016-05-16T12:00:00.000000000',\n '2016-06-16T00:00:00.000000000', '2016-07-16T12:00:00.000000000',\n '2016-08-16T12:00:00.000000000', '2016-09-16T00:00:00.000000000',\n '2016-10-16T12:00:00.000000000', '2016-11-16T00:00:00.000000000',\n '2016-12-16T12:00:00.000000000', '2017-01-16T12:00:00.000000000',\n '2017-02-15T00:00:00.000000000', '2017-03-16T12:00:00.000000000',\n '2017-04-16T00:00:00.000000000', '2017-05-16T12:00:00.000000000',\n '2017-06-16T00:00:00.000000000', '2017-07-16T12:00:00.000000000',\n '2017-08-16T12:00:00.000000000', '2017-09-16T00:00:00.000000000',\n '2017-10-16T12:00:00.000000000', '2017-11-16T00:00:00.000000000',\n '2017-12-16T06:00:00.000000000'], dtype='datetime64[ns]')time_bnds(time, nv)datetime64[ns]dask.array<chunksize=(1, 2), meta=np.ndarray>comment :Start and end times of averaging period.coverage_content_type :coordinatelong_name :time bounds of averaging period\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.02 kiB\n16 B\n\n\nShape\n(193, 2)\n(1, 2)\n\n\nCount\n579 Tasks\n193 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2 193\n\n\n\n\n\n\n\n\n\n\n\nData variables: (2)\n\n\n\n\n\n\n\nSALT\n\n\n(time, Z, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDefined using CF convention 'Sea water salinity is the salt content of sea water, often on the Practical Salinity Scale of 1978. However, the unqualified term 'salinity' is generic and does not necessarily imply any particular method of calculation. The units of salinity are dimensionless and the units attribute should normally be given as 1e-3 or 0.001 i.e. parts per thousand.' see https://cfconventions.org/Data/cf-standard-names/73/build/cf-standard-name-table.html\n\ncoverage_content_type :\n\nmodelResult\n\nlong_name :\n\nSalinity\n\nstandard_name :\n\nsea_water_salinity\n\nunits :\n\n1e-3\n\nvalid_max :\n\n41.26802444458008\n\nvalid_min :\n\n17.106637954711914\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.32 GiB\n14.95 MiB\n\n\nShape\n(193, 50, 360, 720)\n(1, 50, 280, 280)\n\n\nCount\n2509 Tasks\n1158 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 193 1 720 360 50\n\n\n\n\n\n\n\n\nTHETA\n\n\n(time, Z, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 50, 280, 280), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea water potential temperature is the temperature a parcel of sea water would have if moved adiabatically to sea level pressure. Note: the equation of state is a modified UNESCO formula by Jackett and McDougall (1995), which uses the model variable potential temperature as input assuming a horizontally and temporally constant pressure of $p_0=-g ho_{0} z$.\n\ncoverage_content_type :\n\nmodelResult\n\nlong_name :\n\nPotential temperature\n\nstandard_name :\n\nsea_water_potential_temperature\n\nunits :\n\ndegree_C\n\nvalid_max :\n\n36.032955169677734\n\nvalid_min :\n\n-2.2909388542175293\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.32 GiB\n14.95 MiB\n\n\nShape\n(193, 50, 360, 720)\n(1, 50, 280, 280)\n\n\nCount\n2509 Tasks\n1158 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 193 1 720 360 50\n\n\n\n\n\n\nAttributes: (62)Conventions :CF-1.8, ACDD-1.3acknowledgement :This research was carried out by the Jet Propulsion Laboratory, managed by the California Institute of Technology under a contract with the National Aeronautics and Space Administration.author :Ian Fenty and Ou Wangcdm_data_type :Gridcomment :Fields provided on a regular lat-lon grid. They have been mapped to the regular lat-lon grid from the original ECCO lat-lon-cap 90 (llc90) native model grid.coordinates_comment :Note: the global 'coordinates' attribute describes auxillary coordinates.creator_email :ecco-group@mit.educreator_institution :NASA Jet Propulsion Laboratory (JPL)creator_name :ECCO Consortiumcreator_type :groupcreator_url :https://ecco-group.orgdate_created :2020-12-18T09:50:20date_issued :2020-12-18T09:50:20date_metadata_modified :2021-03-15T22:06:59date_modified :2021-03-15T22:06:59geospatial_bounds_crs :EPSG:4326geospatial_lat_max :90.0geospatial_lat_min :-90.0geospatial_lat_resolution :0.5geospatial_lat_units :degrees_northgeospatial_lon_max :180.0geospatial_lon_min :-180.0geospatial_lon_resolution :0.5geospatial_lon_units :degrees_eastgeospatial_vertical_max :0.0geospatial_vertical_min :-6134.5geospatial_vertical_positive :upgeospatial_vertical_resolution :variablegeospatial_vertical_units :meterhistory :Inaugural release of an ECCO Central Estimate solution to PO.DAACid :10.5067/ECG5M-OTS44institution :NASA Jet Propulsion Laboratory (JPL)instrument_vocabulary :GCMD instrument keywordskeywords :EARTH SCIENCE SERVICES > MODELS > EARTH SCIENCE REANALYSES/ASSIMILATION MODELS, EARTH SCIENCE > OCEANS > SALINITY/DENSITY > SALINITY, EARTH SCIENCE > OCEANS > OCEAN TEMPERATURE > POTENTIAL TEMPERATUREkeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordslicense :Public Domainmetadata_link :https://cmr.earthdata.nasa.gov/search/collections.umm_json?ShortName=ECCO_L4_TEMP_SALINITY_05DEG_MONTHLY_V4R4naming_authority :gov.nasa.jplplatform :ERS-1/2, TOPEX/Poseidon, Geosat Follow-On (GFO), ENVISAT, Jason-1, Jason-2, CryoSat-2, SARAL/AltiKa, Jason-3, AVHRR, Aquarius, SSM/I, SSMIS, GRACE, DTU17MDT, Argo, WOCE, GO-SHIP, MEOP, Ice Tethered Profilers (ITP)platform_vocabulary :GCMD platform keywordsprocessing_level :L4product_name :OCEAN_TEMPERATURE_SALINITY_mon_mean_2001-12_ECCO_V4r4_latlon_0p50deg.ncproduct_time_coverage_end :2018-01-01T00:00:00product_time_coverage_start :1992-01-01T12:00:00product_version :Version 4, Release 4program :NASA Physical Oceanography, Cryosphere, Modeling, Analysis, and Prediction (MAP)project :Estimating the Circulation and Climate of the Ocean (ECCO)publisher_email :podaac@podaac.jpl.nasa.govpublisher_institution :PO.DAACpublisher_name :Physical Oceanography Distributed Active Archive Center (PO.DAAC)publisher_type :institutionpublisher_url :https://podaac.jpl.nasa.govreferences :ECCO Consortium, Fukumori, I., Wang, O., Fenty, I., Forget, G., Heimbach, P., & Ponte, R. M. 2020. Synopsis of the ECCO Central Production Global Ocean and Sea-Ice State Estimate (Version 4 Release 4). doi:10.5281/zenodo.3765928source :The ECCO V4r4 state estimate was produced by fitting a free-running solution of the MITgcm (checkpoint 66g) to satellite and in situ observational data in a least squares sense using the adjoint methodstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsummary :This dataset provides monthly-averaged ocean potential temperature and salinity interpolated to a regular 0.5-degree grid from the ECCO Version 4 Release 4 (V4r4) ocean and sea-ice state estimate. Estimating the Circulation and Climate of the Ocean (ECCO) state estimates are dynamically and kinematically-consistent reconstructions of the three-dimensional, time-evolving ocean, sea-ice, and surface atmospheric states. ECCO V4r4 is a free-running solution of a global, nominally 1-degree configuration of the MIT general circulation model (MITgcm) that has been fit to observations in a least-squares sense. Observational data constraints used in V4r4 include sea surface height (SSH) from satellite altimeters [ERS-1/2, TOPEX/Poseidon, GFO, ENVISAT, Jason-1,2,3, CryoSat-2, and SARAL/AltiKa]; sea surface temperature (SST) from satellite radiometers [AVHRR], sea surface salinity (SSS) from the Aquarius satellite radiometer/scatterometer, ocean bottom pressure (OBP) from the GRACE satellite gravimeter; sea-ice concentration from satellite radiometers [SSM/I and SSMIS], and in-situ ocean temperature and salinity measured with conductivity-temperature-depth (CTD) sensors and expendable bathythermographs (XBTs) from several programs [e.g., WOCE, GO-SHIP, Argo, and others] and platforms [e.g., research vessels, gliders, moorings, ice-tethered profilers, and instrumented pinnipeds]. V4r4 covers the period 1992-01-01T12:00:00 to 2018-01-01T00:00:00.time_coverage_duration :P1Mtime_coverage_end :2002-01-01T00:00:00time_coverage_resolution :P1Mtime_coverage_start :2001-12-01T00:00:00title :ECCO Ocean Temperature and Salinity - Monthly Mean 0.5 Degree (Version 4 Release 4)uuid :7f718714-4159-11eb-8bbd-0cc47a3f819b", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2184,7 +2184,7 @@ "href": "notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html#set-up-dask-workers-for-parallelization", "title": "Hydrocron API: SWOT Time Series Examples", "section": "Set up Dask Workers for Parallelization", - "text": "Set up Dask Workers for Parallelization\n\nA note on Dask\nWe use Dask for the notebook as it aggregates the data into a Dask DataFrame which can then be used in a variety of ways to explore, visualize, and analyze the data and it optimizes these operations by preforming various tasks in parallel. See the Dask Documentation for more information.\nWe also recognize that it may be a bit complex to use for smaller queries and offer the recommedation below to set the number of workers n_workers to 1 which will run the operations on a single thread instead of parallel.\n\nclient = Client(n_workers=4) # Set to n workers for number of CPUs or parallel processes or set to 1 worker to run things on a single thread\nclient\n\n\n\n\n\n\n\n\n\nClient\n\nScheduler: tcp://127.0.0.1:63944\nDashboard: http://127.0.0.1:8787/status\n\nCluster\n\nWorkers: 4\nCores: 16\nMemory: 34.16 GB", + "text": "Set up Dask Workers for Parallelization\n\nA note on Dask\nWe use Dask for the notebook as it aggregates the data into a Dask DataFrame which can then be used in a variety of ways to explore, visualize, and analyze the data and it optimizes these operations by preforming various tasks in parallel. See the Dask Documentation for more information.\nWe also recognize that it may be a bit complex to use for smaller queries and offer the recommedation below to set the number of workers n_workers to 1 which will run the operations on a single thread instead of parallel.\n\nclient = Client(n_workers=4) # Set to n workers for number of CPUs or parallel processes or set to 1 worker to run things on a single thread\nclient\n\n\n\n\n\n\n\n\nClient\n\nScheduler: tcp://127.0.0.1:63944\nDashboard: http://127.0.0.1:8787/status\n\nCluster\n\nWorkers: 4\nCores: 16\nMemory: 34.16 GB", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2212,7 +2212,7 @@ "href": "notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html#query-hydrocron-for-time-series-data", "title": "Hydrocron API: SWOT Time Series Examples", "section": "Query Hydrocron for time series data", - "text": "Query Hydrocron for time series data\n\nDask Delayed Function to Query in Parallel\nWe define a function that will query hydrocron and return a database of the time series data for the reaches identified. This is defined as a Dask delayed function with the @dask.delayed decorator so that we can query reaches in parallel and return a Dask Dataframe to use in our visualizations.\n\n@dask.delayed\ndef query_hydrocron(query_url, reach_id, start_time, end_time, fields, empty_df):\n \"\"\"Query Hydrocron for reach-level time series data.\n\n Parameters\n ----------\n query_url: str - URL to use to query FTS\n reach_id: str - String SWORD reach identifier\n start_time: str - String time to start query\n end_time: str - String time to end query\n fields: list - List of fields to return in query response\n empty_df: pandas.DataFrame that contains empty query results\n\n Returns\n -------\n pandas.DataFrame that contains query results\n \"\"\"\n\n params = {\n \"feature\": \"Reach\",\n \"feature_id\": reach_id,\n \"output\": \"csv\",\n \"start_time\": start_time,\n \"end_time\": end_time,\n \"fields\": fields\n }\n results = requests.get(query_url, params=params)\n if \"results\" in results.json().keys():\n results_csv = results.json()[\"results\"][\"csv\"]\n df = pd.read_csv(StringIO(results_csv))\n else:\n df = empty_df\n\n return df\n\n\n\nCreate the query for Hydrocron!\nAll parameter options are listed in the Hydrocron documentation: https://podaac.github.io/hydrocron/timeseries.html\n\n%%time\n# Create queries that return Pandas.DataFrame objects\nstart_time = \"2023-07-28T00:00:00Z\"\nend_time = \"2024-04-16T00:00:00Z\"\nfields = \"reach_id,time_str,wse\"\nresults = []\nfor reach in reach_ids:\n # Create an empty dataframe for cases where no data is returned for a reach identifier\n empty_df = pd.DataFrame({\n \"reach_id\": np.int64(reach),\n \"time_str\": datetime.datetime(1900, 1, 1).strftime(\"%Y-%m-%dT%H:%M:%S\"),\n \"wse\": -999999999999.0,\n \"wse_units\": \"m\"\n }, index=[0])\n results.append(query_hydrocron(HYDROCRON_URL, reach, start_time, end_time, fields, empty_df))\n\n# Load DataFrame results into dask.dataframe\nddf = dd.from_delayed(results)\nddf.head(n=20, npartitions=len(reach_ids))\n\nCPU times: user 444 ms, sys: 131 ms, total: 575 ms\nWall time: 10.7 s\n\n\n\n\n\n\n\n\n\n\nreach_id\ntime_str\nwse\nwse_units\n\n\n\n\n0\n73252000433\n2024-02-09T04:28:31Z\n1.004017e+02\nm\n\n\n1\n73252000433\n2024-02-09T15:17:26Z\n9.985260e+01\nm\n\n\n2\n73252000433\n2024-03-01T01:13:37Z\n1.272824e+02\nm\n\n\n3\n73252000433\n2024-03-01T12:02:32Z\n1.005151e+02\nm\n\n\n4\n73252000433\n2024-03-21T21:58:40Z\n1.103624e+02\nm\n\n\n5\n73252000433\n2024-04-11T18:43:45Z\n1.142618e+02\nm\n\n\n6\n73252000433\n2024-04-12T05:32:40Z\n1.006057e+02\nm\n\n\n0\n73252001533\n2024-02-09T04:28:41Z\n2.006382e+02\nm\n\n\n1\n73252001533\n2024-02-09T15:17:16Z\n2.007256e+02\nm\n\n\n2\n73252001533\n2024-03-01T01:13:47Z\n2.008445e+02\nm\n\n\n3\n73252001533\n2024-03-01T12:02:22Z\n2.016775e+02\nm\n\n\n4\n73252001533\n2024-03-21T21:58:50Z\n2.009672e+02\nm\n\n\n5\n73252001533\n2024-04-11T18:43:55Z\n2.008128e+02\nm\n\n\n6\n73252001533\n2024-04-12T05:32:30Z\n2.008465e+02\nm\n\n\n0\n73252001404\n1900-01-01T00:00:00\n-1.000000e+12\nm\n\n\n0\n73252001434\n2024-01-30T06:06:26Z\n-1.000000e+12\nm\n\n\n1\n73252001434\nno_data\n-1.000000e+12\nm\n\n\n2\n73252001434\nno_data\n-1.000000e+12\nm\n\n\n3\n73252001434\n2024-02-20T02:51:31Z\n-1.000000e+12\nm\n\n\n4\n73252001434\nno_data\n-1.000000e+12\nm\n\n\n\n\n\n\n\n\n\n# Remove fill values for missing observations\nddf = ddf.loc[(ddf[\"wse\"] != -999999999999.0)]\n\n# Convert time_str to datetime format\nddf.time_str = dd.to_datetime(ddf.time_str)\n\nddf.head(n=20, npartitions=len(reach_ids))\n\n\n\n\n\n\n\n\n\nreach_id\ntime_str\nwse\nwse_units\n\n\n\n\n0\n73252000433\n2024-02-09 04:28:31+00:00\n100.4017\nm\n\n\n1\n73252000433\n2024-02-09 15:17:26+00:00\n99.8526\nm\n\n\n2\n73252000433\n2024-03-01 01:13:37+00:00\n127.2824\nm\n\n\n3\n73252000433\n2024-03-01 12:02:32+00:00\n100.5151\nm\n\n\n4\n73252000433\n2024-03-21 21:58:40+00:00\n110.3624\nm\n\n\n5\n73252000433\n2024-04-11 18:43:45+00:00\n114.2618\nm\n\n\n6\n73252000433\n2024-04-12 05:32:40+00:00\n100.6057\nm\n\n\n0\n73252001533\n2024-02-09 04:28:41+00:00\n200.6382\nm\n\n\n1\n73252001533\n2024-02-09 15:17:16+00:00\n200.7256\nm\n\n\n2\n73252001533\n2024-03-01 01:13:47+00:00\n200.8445\nm\n\n\n3\n73252001533\n2024-03-01 12:02:22+00:00\n201.6775\nm\n\n\n4\n73252001533\n2024-03-21 21:58:50+00:00\n200.9672\nm\n\n\n5\n73252001533\n2024-04-11 18:43:55+00:00\n200.8128\nm\n\n\n6\n73252001533\n2024-04-12 05:32:30+00:00\n200.8465\nm\n\n\n0\n73252001695\n2024-01-29 06:05:14+00:00\n-0.2095\nm\n\n\n3\n73252001695\n2024-02-19 02:50:19+00:00\n-0.1801\nm\n\n\n4\n73252001695\n2024-02-19 13:40:15+00:00\n0.1047\nm\n\n\n6\n73252001695\n2024-03-10 23:35:22+00:00\n-0.0288\nm\n\n\n7\n73252001695\n2024-03-11 10:25:17+00:00\n0.2217\nm\n\n\n9\n73252001695\n2024-03-31 20:20:26+00:00\n-0.0407\nm\n\n\n\n\n\n\n\n\n\n# Plot results\nline_plot = ddf.hvplot(x=\"time_str\", y=\"wse\", by=\"reach_id\", kind=\"line\", persist=True)\nline_plot.opts(xrotation=90)\n\nscatter_plot = ddf.hvplot(x=\"time_str\", y=\"wse\", by=\"reach_id\", kind=\"scatter\", persist=True)\nline_plot * scatter_plot\n\n\n\n\n\n \n\n\n\n\n\nclient.close()", + "text": "Query Hydrocron for time series data\n\nDask Delayed Function to Query in Parallel\nWe define a function that will query hydrocron and return a database of the time series data for the reaches identified. This is defined as a Dask delayed function with the @dask.delayed decorator so that we can query reaches in parallel and return a Dask Dataframe to use in our visualizations.\n\n@dask.delayed\ndef query_hydrocron(query_url, reach_id, start_time, end_time, fields, empty_df):\n \"\"\"Query Hydrocron for reach-level time series data.\n\n Parameters\n ----------\n query_url: str - URL to use to query FTS\n reach_id: str - String SWORD reach identifier\n start_time: str - String time to start query\n end_time: str - String time to end query\n fields: list - List of fields to return in query response\n empty_df: pandas.DataFrame that contains empty query results\n\n Returns\n -------\n pandas.DataFrame that contains query results\n \"\"\"\n\n params = {\n \"feature\": \"Reach\",\n \"feature_id\": reach_id,\n \"output\": \"csv\",\n \"start_time\": start_time,\n \"end_time\": end_time,\n \"fields\": fields\n }\n results = requests.get(query_url, params=params)\n if \"results\" in results.json().keys():\n results_csv = results.json()[\"results\"][\"csv\"]\n df = pd.read_csv(StringIO(results_csv))\n else:\n df = empty_df\n\n return df\n\n\n\nCreate the query for Hydrocron!\nAll parameter options are listed in the Hydrocron documentation: https://podaac.github.io/hydrocron/timeseries.html\n\n%%time\n# Create queries that return Pandas.DataFrame objects\nstart_time = \"2023-07-28T00:00:00Z\"\nend_time = \"2024-04-16T00:00:00Z\"\nfields = \"reach_id,time_str,wse\"\nresults = []\nfor reach in reach_ids:\n # Create an empty dataframe for cases where no data is returned for a reach identifier\n empty_df = pd.DataFrame({\n \"reach_id\": np.int64(reach),\n \"time_str\": datetime.datetime(1900, 1, 1).strftime(\"%Y-%m-%dT%H:%M:%S\"),\n \"wse\": -999999999999.0,\n \"wse_units\": \"m\"\n }, index=[0])\n results.append(query_hydrocron(HYDROCRON_URL, reach, start_time, end_time, fields, empty_df))\n\n# Load DataFrame results into dask.dataframe\nddf = dd.from_delayed(results)\nddf.head(n=20, npartitions=len(reach_ids))\n\nCPU times: user 444 ms, sys: 131 ms, total: 575 ms\nWall time: 10.7 s\n\n\n\n\n\n\n\n\n\nreach_id\ntime_str\nwse\nwse_units\n\n\n\n\n0\n73252000433\n2024-02-09T04:28:31Z\n1.004017e+02\nm\n\n\n1\n73252000433\n2024-02-09T15:17:26Z\n9.985260e+01\nm\n\n\n2\n73252000433\n2024-03-01T01:13:37Z\n1.272824e+02\nm\n\n\n3\n73252000433\n2024-03-01T12:02:32Z\n1.005151e+02\nm\n\n\n4\n73252000433\n2024-03-21T21:58:40Z\n1.103624e+02\nm\n\n\n5\n73252000433\n2024-04-11T18:43:45Z\n1.142618e+02\nm\n\n\n6\n73252000433\n2024-04-12T05:32:40Z\n1.006057e+02\nm\n\n\n0\n73252001533\n2024-02-09T04:28:41Z\n2.006382e+02\nm\n\n\n1\n73252001533\n2024-02-09T15:17:16Z\n2.007256e+02\nm\n\n\n2\n73252001533\n2024-03-01T01:13:47Z\n2.008445e+02\nm\n\n\n3\n73252001533\n2024-03-01T12:02:22Z\n2.016775e+02\nm\n\n\n4\n73252001533\n2024-03-21T21:58:50Z\n2.009672e+02\nm\n\n\n5\n73252001533\n2024-04-11T18:43:55Z\n2.008128e+02\nm\n\n\n6\n73252001533\n2024-04-12T05:32:30Z\n2.008465e+02\nm\n\n\n0\n73252001404\n1900-01-01T00:00:00\n-1.000000e+12\nm\n\n\n0\n73252001434\n2024-01-30T06:06:26Z\n-1.000000e+12\nm\n\n\n1\n73252001434\nno_data\n-1.000000e+12\nm\n\n\n2\n73252001434\nno_data\n-1.000000e+12\nm\n\n\n3\n73252001434\n2024-02-20T02:51:31Z\n-1.000000e+12\nm\n\n\n4\n73252001434\nno_data\n-1.000000e+12\nm\n\n\n\n\n\n\n\n\n# Remove fill values for missing observations\nddf = ddf.loc[(ddf[\"wse\"] != -999999999999.0)]\n\n# Convert time_str to datetime format\nddf.time_str = dd.to_datetime(ddf.time_str)\n\nddf.head(n=20, npartitions=len(reach_ids))\n\n\n\n\n\n\n\n\nreach_id\ntime_str\nwse\nwse_units\n\n\n\n\n0\n73252000433\n2024-02-09 04:28:31+00:00\n100.4017\nm\n\n\n1\n73252000433\n2024-02-09 15:17:26+00:00\n99.8526\nm\n\n\n2\n73252000433\n2024-03-01 01:13:37+00:00\n127.2824\nm\n\n\n3\n73252000433\n2024-03-01 12:02:32+00:00\n100.5151\nm\n\n\n4\n73252000433\n2024-03-21 21:58:40+00:00\n110.3624\nm\n\n\n5\n73252000433\n2024-04-11 18:43:45+00:00\n114.2618\nm\n\n\n6\n73252000433\n2024-04-12 05:32:40+00:00\n100.6057\nm\n\n\n0\n73252001533\n2024-02-09 04:28:41+00:00\n200.6382\nm\n\n\n1\n73252001533\n2024-02-09 15:17:16+00:00\n200.7256\nm\n\n\n2\n73252001533\n2024-03-01 01:13:47+00:00\n200.8445\nm\n\n\n3\n73252001533\n2024-03-01 12:02:22+00:00\n201.6775\nm\n\n\n4\n73252001533\n2024-03-21 21:58:50+00:00\n200.9672\nm\n\n\n5\n73252001533\n2024-04-11 18:43:55+00:00\n200.8128\nm\n\n\n6\n73252001533\n2024-04-12 05:32:30+00:00\n200.8465\nm\n\n\n0\n73252001695\n2024-01-29 06:05:14+00:00\n-0.2095\nm\n\n\n3\n73252001695\n2024-02-19 02:50:19+00:00\n-0.1801\nm\n\n\n4\n73252001695\n2024-02-19 13:40:15+00:00\n0.1047\nm\n\n\n6\n73252001695\n2024-03-10 23:35:22+00:00\n-0.0288\nm\n\n\n7\n73252001695\n2024-03-11 10:25:17+00:00\n0.2217\nm\n\n\n9\n73252001695\n2024-03-31 20:20:26+00:00\n-0.0407\nm\n\n\n\n\n\n\n\n\n# Plot results\nline_plot = ddf.hvplot(x=\"time_str\", y=\"wse\", by=\"reach_id\", kind=\"line\", persist=True)\nline_plot.opts(xrotation=90)\n\nscatter_plot = ddf.hvplot(x=\"time_str\", y=\"wse\", by=\"reach_id\", kind=\"scatter\", persist=True)\nline_plot * scatter_plot\n\n\n\n\n\n \n\n\n\n\n\nclient.close()", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2397,7 +2397,7 @@ "href": "notebooks/datasets/SWOT_Raster_Notebook_local.html#authentication-with-earthaccess", "title": "Working with SWOT Level 2 Water Mask Raster Image Data Product:", "section": "Authentication with earthaccess", - "text": "Authentication with earthaccess\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login()\n\n\nSearch for SWOT Raster products using earthaccess\nEach dataset has it’s own unique collection concept ID. For the SWOT_L2_HR_Raster_2.0 dataset, we can find the collection ID here.\nFor this tutorial, we are looking at the Lake Mead Reservoir in the United States.\nWe used bbox finder to get the exact coordinates for our area of interest.\n\nresults = earthaccess.search_data(\n short_name = 'SWOT_L2_HR_RASTER_2.0',\n bounding_box=(-115.112686,35.740939,-114.224167,36.937819),\n temporal =('2024-02-01 12:00:00', '2024-02-01 23:59:59'),\n granule_name = '*_100m_*',\n count =200\n)\n\nGranules found: 2\n\n\n\nearthaccess.download(results, \"data_downloads/SWOT_Raster_LakeMead/\")\n\n Getting 2 granules, approx download size: 0.07 GB\nAccessing cloud dataset using dataset endpoint credentials: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\nDownloaded: data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_045F_20240201T183814_20240201T183835_PIC0_01.nc\nDownloaded: data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_046F_20240201T183834_20240201T183855_PIC0_01.nc\n\n\n['data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_045F_20240201T183814_20240201T183835_PIC0_01.nc',\n 'data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_046F_20240201T183834_20240201T183855_PIC0_01.nc']\n\n\n\n\nVisualizing Multiple Tiles\nLet’s now visualize multiple raster tiles in a folder and explore the data.\nUtilizing xarray.open_mfdataset which supports the opening of multiple files.\n\nfolder_path = \"data_downloads/SWOT_Raster_LakeMead/\"\n\nfile_paths = [os.path.join(folder_path, file) for file in os.listdir(folder_path) if file.endswith('.nc')]\n\n\nds = xr.open_mfdataset(file_paths, combine='nested', concat_dim='x')\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (y: 2784, x: 3074)\nCoordinates:\n * y (y) float64 3.899e+06 3.899e+06 ... 4.177e+06\n * x (x) float64 5.682e+05 5.683e+05 ... 6.928e+05\nData variables: (12/39)\n crs (x) object b'1' b'1' b'1' b'1' ... b'1' b'1' b'1'\n longitude (y, x) float64 dask.array<chunksize=(512, 512), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(512, 512), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(2784, 1536), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(768, 768), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2024-02-05T08:50:33Z : Creation\n platform: SWOT\n references: V1.2.1\n ... ...\n x_min: 568200.0\n x_max: 721700.0\n y_min: 3898600.0\n y_max: 4052100.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:y: 2784x: 3074Coordinates: (2)y(y)float643.899e+06 3.899e+06 ... 4.177e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([3898600., 3898700., 3898800., ..., 4176700., 4176800., 4176900.])x(x)float645.682e+05 5.683e+05 ... 6.928e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([568200., 568300., 568400., ..., 692600., 692700., 692800.])Data variables: (39)crs(x)objectb'1' b'1' b'1' ... b'1' b'1' b'1'long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 11Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-117.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]comment :UTM zone coordinate reference system.array([b'1', b'1', b'1', ..., b'1', b'1', b'1'], dtype=object)longitude(y, x)float64dask.array<chunksize=(512, 512), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(512, 512), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded dark_water_degraded low_coherence_water_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 1048576 2097152 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4114378918\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111233454\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111364519\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 512), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 512), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\nIndexes: (2)yPandasIndexPandasIndex(Float64Index([3898600.0, 3898700.0, 3898800.0, 3898900.0, 3899000.0, 3899100.0,\n 3899200.0, 3899300.0, 3899400.0, 3899500.0,\n ...\n 4176000.0, 4176100.0, 4176200.0, 4176300.0, 4176400.0, 4176500.0,\n 4176600.0, 4176700.0, 4176800.0, 4176900.0],\n dtype='float64', name='y', length=2784))xPandasIndexPandasIndex(Float64Index([568200.0, 568300.0, 568400.0, 568500.0, 568600.0, 568700.0,\n 568800.0, 568900.0, 569000.0, 569100.0,\n ...\n 691900.0, 692000.0, 692100.0, 692200.0, 692300.0, 692400.0,\n 692500.0, 692600.0, 692700.0, 692800.0],\n dtype='float64', name='x', length=3074))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2024-02-05T08:50:33Z : Creationplatform :SWOTreferences :V1.2.1reference_document :JPL D-56416 - Revision C - December 8, 2023contact :podaac@podaac.jpl.nasa.govcycle_number :10pass_number :218scene_number :46tile_numbers :[90 91 92 93 90 91 92 93]tile_names :218_090L, 218_091L, 218_092L, 218_093L, 218_090R, 218_091R, 218_092R, 218_093Rtile_polarizations :H, H, H, H, V, V, V, Vcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM11S_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.1.1time_granule_start :2024-02-01T18:38:34.265833Ztime_granule_end :2024-02-01T18:38:55.360807Ztime_coverage_start :2024-02-01T18:38:34.807712Ztime_coverage_end :2024-02-01T18:38:54.816495Zgeospatial_lon_min :-116.24045666354958geospatial_lon_max :-114.55674281329392geospatial_lat_min :35.225727504637376geospatial_lat_max :36.5951883116925left_first_longitude :-114.84459394683485left_first_latitude :36.5951883116925left_last_longitude :-114.55674281329392left_last_latitude :35.46460890403489right_first_longitude :-116.24045666354958right_first_latitude :36.350992807631336right_last_longitude :-115.93433361296329right_last_latitude :35.225727504637376xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_092L_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_093L_20240201T183854_20240201T183905_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_092R_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_093R_20240201T183854_20240201T183905_PIC0_01.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_092L_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_093L_20240201T183854_20240201T183905_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_092R_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_093R_20240201T183854_20240201T183905_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :11mgrs_latitude_band :Sx_min :568200.0x_max :721700.0y_min :3898600.0y_max :4052100.0institution :CNESproduct_version :01", + "text": "Authentication with earthaccess\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login()\n\n\nSearch for SWOT Raster products using earthaccess\nEach dataset has it’s own unique collection concept ID. For the SWOT_L2_HR_Raster_2.0 dataset, we can find the collection ID here.\nFor this tutorial, we are looking at the Lake Mead Reservoir in the United States.\nWe used bbox finder to get the exact coordinates for our area of interest.\n\nresults = earthaccess.search_data(\n short_name = 'SWOT_L2_HR_RASTER_2.0',\n bounding_box=(-115.112686,35.740939,-114.224167,36.937819),\n temporal =('2024-02-01 12:00:00', '2024-02-01 23:59:59'),\n granule_name = '*_100m_*',\n count =200\n)\n\nGranules found: 2\n\n\n\nearthaccess.download(results, \"data_downloads/SWOT_Raster_LakeMead/\")\n\n Getting 2 granules, approx download size: 0.07 GB\nAccessing cloud dataset using dataset endpoint credentials: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\nDownloaded: data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_045F_20240201T183814_20240201T183835_PIC0_01.nc\nDownloaded: data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_046F_20240201T183834_20240201T183855_PIC0_01.nc\n\n\n['data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_045F_20240201T183814_20240201T183835_PIC0_01.nc',\n 'data_downloads/SWOT_Raster_LakeMead/SWOT_L2_HR_Raster_100m_UTM11S_N_x_x_x_010_218_046F_20240201T183834_20240201T183855_PIC0_01.nc']\n\n\n\n\nVisualizing Multiple Tiles\nLet’s now visualize multiple raster tiles in a folder and explore the data.\nUtilizing xarray.open_mfdataset which supports the opening of multiple files.\n\nfolder_path = \"data_downloads/SWOT_Raster_LakeMead/\"\n\nfile_paths = [os.path.join(folder_path, file) for file in os.listdir(folder_path) if file.endswith('.nc')]\n\n\nds = xr.open_mfdataset(file_paths, combine='nested', concat_dim='x')\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (y: 2784, x: 3074)\nCoordinates:\n * y (y) float64 3.899e+06 3.899e+06 ... 4.177e+06\n * x (x) float64 5.682e+05 5.683e+05 ... 6.928e+05\nData variables: (12/39)\n crs (x) object b'1' b'1' b'1' b'1' ... b'1' b'1' b'1'\n longitude (y, x) float64 dask.array<chunksize=(512, 512), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(512, 512), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(2784, 1536), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(768, 768), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(768, 768), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2024-02-05T08:50:33Z : Creation\n platform: SWOT\n references: V1.2.1\n ... ...\n x_min: 568200.0\n x_max: 721700.0\n y_min: 3898600.0\n y_max: 4052100.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:y: 2784x: 3074Coordinates: (2)y(y)float643.899e+06 3.899e+06 ... 4.177e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([3898600., 3898700., 3898800., ..., 4176700., 4176800., 4176900.])x(x)float645.682e+05 5.683e+05 ... 6.928e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([568200., 568300., 568400., ..., 692600., 692700., 692800.])Data variables: (39)crs(x)objectb'1' b'1' b'1' ... b'1' b'1' b'1'long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 11Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-117.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]comment :UTM zone coordinate reference system.array([b'1', b'1', b'1', ..., b'1', b'1', b'1'], dtype=object)longitude(y, x)float64dask.array<chunksize=(512, 512), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(512, 512), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded dark_water_degraded low_coherence_water_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 1048576 2097152 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4114378918\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111233454\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111364519\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 512), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 512), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1536), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 768), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\nIndexes: (2)yPandasIndexPandasIndex(Float64Index([3898600.0, 3898700.0, 3898800.0, 3898900.0, 3899000.0, 3899100.0,\n 3899200.0, 3899300.0, 3899400.0, 3899500.0,\n ...\n 4176000.0, 4176100.0, 4176200.0, 4176300.0, 4176400.0, 4176500.0,\n 4176600.0, 4176700.0, 4176800.0, 4176900.0],\n dtype='float64', name='y', length=2784))xPandasIndexPandasIndex(Float64Index([568200.0, 568300.0, 568400.0, 568500.0, 568600.0, 568700.0,\n 568800.0, 568900.0, 569000.0, 569100.0,\n ...\n 691900.0, 692000.0, 692100.0, 692200.0, 692300.0, 692400.0,\n 692500.0, 692600.0, 692700.0, 692800.0],\n dtype='float64', name='x', length=3074))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2024-02-05T08:50:33Z : Creationplatform :SWOTreferences :V1.2.1reference_document :JPL D-56416 - Revision C - December 8, 2023contact :podaac@podaac.jpl.nasa.govcycle_number :10pass_number :218scene_number :46tile_numbers :[90 91 92 93 90 91 92 93]tile_names :218_090L, 218_091L, 218_092L, 218_093L, 218_090R, 218_091R, 218_092R, 218_093Rtile_polarizations :H, H, H, H, V, V, V, Vcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM11S_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.1.1time_granule_start :2024-02-01T18:38:34.265833Ztime_granule_end :2024-02-01T18:38:55.360807Ztime_coverage_start :2024-02-01T18:38:34.807712Ztime_coverage_end :2024-02-01T18:38:54.816495Zgeospatial_lon_min :-116.24045666354958geospatial_lon_max :-114.55674281329392geospatial_lat_min :35.225727504637376geospatial_lat_max :36.5951883116925left_first_longitude :-114.84459394683485left_first_latitude :36.5951883116925left_last_longitude :-114.55674281329392left_last_latitude :35.46460890403489right_first_longitude :-116.24045666354958right_first_latitude :36.350992807631336right_last_longitude :-115.93433361296329right_last_latitude :35.225727504637376xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_092L_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_093L_20240201T183854_20240201T183905_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_092R_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_093R_20240201T183854_20240201T183905_PIC0_01.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_092L_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_093L_20240201T183854_20240201T183905_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091R_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_092R_20240201T183844_20240201T183855_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_093R_20240201T183854_20240201T183905_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :11mgrs_latitude_band :Sx_min :568200.0x_max :721700.0y_min :3898600.0y_max :4052100.0institution :CNESproduct_version :01", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2412,7 +2412,7 @@ "href": "notebooks/datasets/SWOTHR_s3Access.html#accessing-and-visualizing-swot-datasets", "title": "SWOT Hydrology Dataset Exploration in the Cloud", "section": "Accessing and Visualizing SWOT Datasets", - "text": "Accessing and Visualizing SWOT Datasets\n\nRequirement:\nThis tutorial can only be run in an AWS cloud instance running in us-west-2: NASA Earthdata Cloud data in S3 can be directly accessed via earthaccess python library; this access is limited to requests made within the US West (Oregon) (code: us-west-2) AWS region.\n\n\nLearning Objectives:\n\nAccess SWOT HR data prodcuts (archived in NASA Earthdata Cloud) within the AWS cloud, without downloading to local machine\nVisualize accessed data for a quick check\n\n\nSWOT Level 2 KaRIn High Rate Version 2.0 Datasets:\n\nRiver Vector Shapefile - SWOT_L2_HR_RIVERSP_2.0\nLake Vector Shapefile - SWOT_L2_HR_LAKESP_2.0\nWater Mask Pixel Cloud NetCDF - SWOT_L2_HR_PIXC_2.0\nWater Mask Pixel Cloud Vector Attribute NetCDF - SWOT_L2_HR_PIXCVec_2.0\nRaster NetCDF - SWOT_L2_HR_Raster_2.0\nSingle Look Complex Data product - SWOT_L1B_HR_SLC_2.0\n\nNotebook Author: Cassie Nickles, NASA PO.DAAC (Feb 2024) || Other Contributors: Zoe Walschots (PO.DAAC Summer Intern 2023), Catalina Taglialatela (NASA PO.DAAC), Luis Lopez (NASA NSIDC DAAC)\nLast updated: 7 Feb 2024\n\n\n\nLibraries Needed\n\nimport s3fs\nimport fiona\nimport xarray as xr\nimport pandas as pd\nimport geopandas as gpd\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport hvplot.xarray\nimport earthaccess\n\npd.set_option('display.max_columns', None) #make sure all columns displayed for shapefiles\n\n\n\n\n\n\n\n\n\n\n\n\nEarthdata Login\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. If you don’t already have one, please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up. We use earthaccess to authenticate your login credentials below.\n\nauth = earthaccess.login()\n\n\n\nSingle File Access\n\n1. River Vector Shapefiles\nThe s3 access link can be found using earthaccess data search. Since this collection consists of Reach and Node files, we need to extract only the granule for the Reach file. We do this by filtering for the ‘Reach’ title in the data link.\nAlternatively, Earthdata Search (see tutorial) can be used to search in a map graphic user interface.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for the data of interest\n\n#Retrieves granule from the day we want, in this case by passing to `earthdata.search_data` function the data collection shortname, temporal bounds, and filter by wildcards\nriver_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Reach*_009_NA*') # here we filter by Reach files (not node), pass=009, continent code=NA\n\nGranules found: 7\n\n\n\n\nSet up an s3fs session for Direct Cloud Access\ns3fs sessions are used for authenticated access to s3 bucket and allows for typical file-system style operations. Below we create session by passing in the data access information.\n\nfs_s3 = earthaccess.get_s3fs_session(results=river_results)\n\n\n\nCreate Fiona session to work with zip and embedded shapefiles in the AWS Cloud\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we will create a Fiona AWS session using the credentials from setting up the s3fs session above to access the shapefiles within the zip files. If we don’t do this, the alternative would be to download the data to the cloud environment (e.g. EC2 instance, user S3 bucket) and extract the .zip file there.\n\nfiona_session=fiona.session.AWSSession(\n aws_access_key_id=fs_s3.storage_options[\"key\"],\n aws_secret_access_key=fs_s3.storage_options[\"secret\"],\n aws_session_token=fs_s3.storage_options[\"token\"]\n )\n\n\n# Get the link for the first zip file\nriver_link = earthaccess.results.DataGranule.data_links(river_results[0], access='direct')[0]\n\n# We use the zip+ prefix so fiona knows that we are operating on a zip file\nriver_shp_url = f\"zip+{river_link}\"\n\nwith fiona.Env(session=fiona_session):\n SWOT_HR_shp1 = gpd.read_file(river_shp_url) \n\n#view the attribute table\nSWOT_HR_shp1 \n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n71224500951\n-1.000000e+12\n-1.000000e+12\nno_data\n48.517717\n-93.692086\nRainy River\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n1\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n71224700961, no_data, no_data, no_data\n71224300941, no_data, no_data, no_data\n325.899994\n0.044680\n208.0\n1480.031\n53\n244919.492\n10586.381484\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.76076 48.51651, -93.76035 48.5...\n\n\n1\n71224700013\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.777900\n-93.233350\nno_data\n3.364954e+02\n9.003000e-02\n2.290000e-03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n3.272000e-01\n8.486717e+02\n2.871400e-01\n-4.807161e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389051\n8389051\n3\n4194318\n1.338000e-03\n1\n-999\n0\n18\n1.000000e+00\n0\n-3.141705e+01\n-2.674060e-05\n-2.894793e-02\n-5.371819e-03\n-5.384998e-03\n5.780308e-03\n-2.241292e+00\n-1.634102e-02\n-8.003274e-03\n5.015258e-01\n1\n1\n71224700021, no_data, no_data, no_data\n71224700276, no_data, no_data, no_data\n335.600006\n0.000000\n1288.0\n1239358.412\n18\n3719.676\n3514.736672\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.21387 48.78466, -93.21403 48.7...\n\n\n2\n71224700021\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.772163\n-93.266891\nno_data\n3.365123e+02\n9.199000e-02\n1.902000e-02\n-1.000000e+12\n-1.000000e+12\n4.959662e-05\n1.018542e-05\n9.733590e-06\n2.575548e-05\n-1.000000e+12\n4.654752e-05\n6.202024e+01\n1.118013e+00\n-1.000000e+12\n-1.000000e+12\n9.836880e+04\n1.773253e+03\n9.836880e+04\n1.773300e+03\n9.836880e+04\n-1.000000e+12\n-1.000000e+12\n1.377000e-01\n1.509669e+02\n-1.470277e+01\n-5.017144e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n1\n2\n0.000000e+00\n1\n-999\n0\n6\n7.500000e-01\n0\n-3.135521e+01\n2.512828e-05\n-2.886645e-02\n-5.377388e-03\n-5.390327e-03\n5.783173e-03\n-2.241321e+00\n-1.657549e-02\n-8.003758e-03\n5.314556e-01\n2\n1\n71224700233, 71224700083, no_data, no_data\n71224700013, no_data, no_data, no_data\n335.600006\n0.000000\n30.0\n76609.119\n8\n5305.752\n1586.075688\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.25587 48.77340, -93.25628 48.7...\n\n\n3\n71224700033\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.733727\n-93.116424\nno_data\n3.365715e+02\n9.068000e-02\n1.112000e-02\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1.505600e+00\n3.730449e+02\n-1.512075e+02\n-3.862870e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n3\n4194318\n1.153940e-01\n1\n-999\n0\n18\n9.000000e-01\n0\n-3.153422e+01\n-1.678670e-05\n-2.908536e-02\n-5.353698e-03\n-5.371641e-03\n5.773116e-03\n-2.241031e+00\n-1.593641e-02\n-8.007598e-03\n3.984029e-01\n1\n1\n71224700286, no_data, no_data, no_data\n71224700041, no_data, no_data, no_data\n335.600006\n0.000000\n645.0\n297730.945\n20\n306795.237\n3904.961218\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-93.09779 48.73888, -93.09820 48.7...\n\n\n4\n71224700041\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.720271\n-93.113458\nno_data\n3.364742e+02\n9.085000e-02\n1.238000e-02\n-1.000000e+12\n-1.000000e+12\n-2.431140e-05\n1.166051e-05\n1.126799e-05\n-9.248820e-05\n-1.000000e+12\n1.647480e-05\n3.930469e+01\n1.013951e+00\n-1.000000e+12\n-1.000000e+12\n4.728760e+04\n1.219887e+03\n4.728760e+04\n1.219900e+03\n4.728760e+04\n-1.000000e+12\n-1.000000e+12\n2.925000e-01\n2.328550e+02\n-4.628440e+00\n-3.776046e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25166265\n25166265\n1\n6\n0.000000e+00\n1\n-999\n0\n5\n8.333333e-01\n0\n-3.152398e+01\n-3.509400e-06\n-2.906824e-02\n-5.351348e-03\n-5.371695e-03\n5.773071e-03\n-2.240743e+00\n-1.600031e-02\n-8.009073e-03\n3.901623e-01\n1\n1\n71224700033, no_data, no_data, no_data\n71224700053, no_data, no_data, no_data\n335.600006\n0.000000\n645.0\n0.000\n6\n302890.276\n1203.102119\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.12101 48.72305, -93.12060 48.7...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n926\n77125000241\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:38Z\n17.960957\n-100.025397\nno_data\n3.560650e+02\n1.501928e+02\n1.501928e+02\n-1.000000e+12\n-1.000000e+12\n1.139809e-03\n8.453720e-04\n8.453667e-04\n-1.968571e-04\n-1.000000e+12\n6.002469e+03\n6.442070e+01\n1.454903e+00\n-1.000000e+12\n-1.000000e+12\n5.130950e+04\n1.158794e+03\n4.143390e+04\n1.158800e+03\n5.130950e+04\n-1.000000e+12\n-1.000000e+12\n3.217900e+00\n6.496189e+01\n-6.441719e+03\n6.087360e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389051\n8389051\n1\n40966\n1.924710e-01\n0\n-999\n1\n4\n5.714286e-02\n0\n-8.767097e+00\n2.520024e-05\n1.047472e-01\n-2.491515e-03\n-1.416101e-03\n3.766508e-03\n-2.225335e+00\n-2.844600e-01\n-1.248337e-02\n-3.609023e-01\n1\n1\n77125000254, no_data, no_data, no_data\n77125000231, no_data, no_data, no_data\n358.600006\n65.289837\n96.0\n864.151\n70\n464330.310\n13953.442643\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-100.06409 17.97308, -100.06403 17...\n\n\n927\n77125000254\n-1.000000e+12\n-1.000000e+12\nno_data\n17.949648\n-99.995193\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n0\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n77125000263, no_data, no_data, no_data\n77125000241, no_data, no_data, no_data\n423.700012\n50.631649\n162.0\n21491.314\n2\n464735.375\n405.065100\n-1.000000e+12\n10286\n1\n1\n0\nLINESTRING (-99.99547 17.95148, -99.99564 17.9...\n\n\n928\n77125000261\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:47Z\n18.362207\n-100.696472\nno_data\n2.316304e+02\n9.208000e-02\n1.946000e-02\n-1.000000e+12\n-1.000000e+12\n9.017132e-04\n5.351440e-06\n4.431470e-06\n8.374171e-04\n-1.000000e+12\n3.976097e-05\n3.544730e+02\n2.232573e+00\n-1.000000e+12\n-1.000000e+12\n3.936467e+06\n2.479300e+04\n3.776529e+06\n2.479300e+04\n3.936467e+06\n-1.000000e+12\n-1.000000e+12\n1.037250e+01\n1.555118e+02\n-1.003980e+00\n-1.240390e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n1\n14\n4.063000e-02\n0\n-999\n0\n56\n1.000000e+00\n0\n-1.111140e+01\n1.232563e-05\n1.055168e-01\n-1.683211e-03\n-6.265789e-04\n3.857576e-03\n-2.255829e+00\n-3.061254e-01\n-1.237202e-02\n1.378732e-01\n2\n1\n77125000021, 77125000011, no_data, no_data\n77123000251, no_data, no_data, no_data\n232.000000\n6.028838\n195.0\n3624.715\n56\n325106.825\n11105.124379\n-1.000000e+12\n0\n4\n1\n0\nLINESTRING (-100.68734 18.40208, -100.68723 18...\n\n\n929\n77125000263\n-1.000000e+12\n-1.000000e+12\nno_data\n17.956269\n-99.961388\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n0\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n77125000273, no_data, no_data, no_data\n77125000254, no_data, no_data, no_data\n463.500000\n5.120043\n459.0\n43956.311\n49\n474450.182\n9714.807127\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.99398 17.94824, -99.99369 17.9...\n\n\n930\n77125000273\n-1.000000e+12\n-1.000000e+12\nno_data\n17.952683\n-99.906755\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n0\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n77125000283, no_data, no_data, no_data\n77125000263, no_data, no_data, no_data\n463.500000\n0.000000\n819.0\n283915.163\n49\n484179.822\n9729.640027\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.93256 17.94746, -99.93273 17.9...\n\n\n\n\n931 rows × 127 columns\n\n\n\n\n\n\nQuickly plot the SWOT river data\n\n# Simple plot\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp1.plot(ax=ax, color='black')\n\n\n\n\n\n\n\n\n\n# # Another way to plot geopandas dataframes is with `explore`, which also plots a basemap\n# SWOT_HR_shp1.explore()\n\n\n\n2. Lake Vector Shapefiles\nThe lake vector shapefiles can be accessed in the same way as the river shapefiles above.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for data of interest\n\nlake_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_LAKESP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Prior*_009_NA*') # here we filter by files with 'Prior' in the name (This collection has three options: Obs, Unassigned, and Prior), pass #8 and continent code=NA\n\nGranules found: 3\n\n\n\n\nSet up an s3fs session for Direct Cloud Access\ns3fs sessions are used for authenticated access to s3 bucket and allows for typical file-system style operations. Below we create session by passing in the data access information.\n\nfs_s3 = earthaccess.get_s3fs_session(results=lake_results)\n\n\n\nCreate Fiona session to work with zip and embedded shapefiles in the AWS Cloud\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we will create a Fiona AWS session using the credentials from setting up the s3fs session above to access the shapefiles within the zip files. If we don’t do this, the alternative would be to download the data to the cloud environment (e.g. EC2 instance, user S3 bucket) and extract the .zip file there.\n\nfiona_session=fiona.session.AWSSession(\n aws_access_key_id=fs_s3.storage_options[\"key\"],\n aws_secret_access_key=fs_s3.storage_options[\"secret\"],\n aws_session_token=fs_s3.storage_options[\"token\"]\n )\n\n\n# Get the link for the first zip file\nlake_link = earthaccess.results.DataGranule.data_links(lake_results[0], access='direct')[0]\n\n# We use the zip+ prefix so fiona knows that we are operating on a zip file\nlake_shp_url = f\"zip+{lake_link}\"\n\nwith fiona.Env(session=fiona_session):\n SWOT_HR_shp2 = gpd.read_file(lake_shp_url) \n\n#view the attribute table\nSWOT_HR_shp2\n\n\n\n\n\n\n\n\n\nlake_id\nreach_id\nobs_id\noverlap\nn_overlap\ntime\ntime_tai\ntime_str\nwse\nwse_u\nwse_r_u\nwse_std\narea_total\narea_tot_u\narea_detct\narea_det_u\nlayovr_val\nxtrk_dist\nds1_l\nds1_l_u\nds1_q\nds1_q_u\nds2_l\nds2_l_u\nds2_q\nds2_q_u\nquality_f\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nxovr_cal_q\ngeoid_hght\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nlake_name\np_res_id\np_lon\np_lat\np_ref_wse\np_ref_area\np_date_t0\np_ds_t0\np_storage\ngeometry\n\n\n\n\n0\n7120818392\nno_data\n712238L999960\n100\n1\n7.558788e+08\n7.558788e+08\n2023-12-14T14:20:39Z\n4.221900e+02\n3.900000e-02\n3.100000e-02\n1.750000e-01\n1.133420e-01\n2.746000e-03\n1.123950e-01\n2.746000e-03\n2.450000e-01\n-2.700895e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n8.362160e-01\n2\n-999\n0\n0\n-2.960103e+01\n-1.076270e-01\n-1.385000e-02\n-1.446900e-02\n6.530000e-03\n-2.219912e+00\n-4.322200e-02\n-2.460000e-03\n-8.323030e-01\nno_data\n-99999999\n-93.370529\n47.725706\n-1.000000e+12\n0.067500\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-93.37004 47.72747, -93.36976 ...\n\n\n1\n7120818432\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n2\n-999\n-999\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\nSOUTH STURGEON LAKE\n-99999999\n-93.063382\n47.636276\n-1.000000e+12\n0.734400\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n2\n7120818512\nno_data\n712239L999974\n91\n1\n7.558788e+08\n7.558788e+08\n2023-12-14T14:20:39Z\n4.035210e+02\n3.800000e-02\n2.900000e-02\n3.670000e-01\n4.746580e-01\n6.040000e-03\n3.230260e-01\n6.040000e-03\n1.100000e-01\n-4.768885e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-2.928009e+01\n-1.069980e-01\n-1.387600e-02\n-1.449100e-02\n6.541000e-03\n-2.224427e+00\n-4.345700e-02\n-2.448000e-03\n-1.489370e+00\nCONNORS LAKE\n-99999999\n-93.634992\n47.777938\n-1.000000e+12\n0.419400\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-93.64085 47.77833, -93.64070 ...\n\n\n3\n7120818532\nno_data\n712238L999960\n100\n1\n7.558788e+08\n7.558788e+08\n2023-12-14T14:20:39Z\n4.214720e+02\n9.700000e-02\n5.700000e-02\n3.140000e-01\n5.936400e-02\n2.015000e-03\n5.936400e-02\n2.015000e-03\n1.100000e-02\n-2.658368e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n0.000000e+00\n2\n-999\n0\n0\n-2.961158e+01\n-1.076620e-01\n-1.385000e-02\n-1.446900e-02\n6.530000e-03\n-2.220099e+00\n-4.328800e-02\n-2.460000e-03\n-8.189060e-01\nno_data\n-99999999\n-93.367313\n47.718575\n-1.000000e+12\n0.018900\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.36683 47.72159, -93.36655 47.721...\n\n\n4\n7120818542\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n2\n-999\n-999\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\nno_data\n-99999999\n-93.042420\n47.711142\n-1.000000e+12\n0.031500\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n56491\n7131519532\nno_data\n713254R999944;713255R000006\n45;42\n2\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:19Z\n1.283300e+01\n7.500000e-02\n5.700000e-02\n1.700000e-01\n7.491100e-02\n1.923000e-03\n7.437200e-02\n1.923000e-03\n1.000000e-03\n2.384581e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-4.790753e+01\n-7.896700e-02\n-4.073000e-03\n-2.923000e-03\n5.666000e-03\n-2.268012e+00\n-1.023750e-01\n-2.140000e-03\n7.063360e-01\nno_data\n-99999999\n-88.000840\n56.331699\n-1.000000e+12\n0.056700\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-87.99912 56.33127, -87.99922 ...\n\n\n56492\n7131519632\nno_data\n713254R999943;713255R000008\n48;20\n2\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:19Z\n1.074100e+01\n1.570000e-01\n1.460000e-01\n1.420000e-01\n3.342300e-02\n1.435000e-03\n3.152200e-02\n1.435000e-03\n5.000000e-03\n2.730958e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-4.786691e+01\n-7.908800e-02\n-3.548000e-03\n-2.638000e-03\n5.728000e-03\n-2.268497e+00\n-1.023450e-01\n-2.141000e-03\n8.137400e-01\nno_data\n-99999999\n-87.948521\n56.320464\n-1.000000e+12\n0.025200\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-87.94670 56.32014, -87.94649 ...\n\n\n56493\n7131519662\nno_data\n713255R000009;713254R999940\n42;33\n2\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:19Z\n9.208000e+00\n1.030000e-01\n1.260000e-01\n1.410000e-01\n2.864300e-02\n1.112000e-03\n2.729100e-02\n1.112000e-03\n3.400000e-02\n2.882420e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-4.784918e+01\n-7.914000e-02\n-3.278000e-03\n-2.509000e-03\n6.730000e-03\n-2.268922e+00\n-1.023670e-01\n-2.142000e-03\n8.608050e-01\nno_data\n-99999999\n-87.925618\n56.315773\n-1.000000e+12\n0.021600\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-87.92352 56.31520, -87.92363 ...\n\n\n56494\n7131560212\nno_data\n713245R000001;713245R999966;713245R999958;7132...\n70;0;0;0;0;0;0;0;0;0;0\n11\n7.558789e+08\n7.558789e+08\n2023-12-14T14:21:43Z\n3.717920e+02\n1.000000e-03\n1.000000e-03\n3.720000e-01\n3.853027e+02\n3.084073e+00\n3.231617e+02\n3.084073e+00\n7.000000e-03\n4.695466e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n1\n0\n-3.585787e+01\n-9.732200e-02\n-1.303500e-02\n-1.356500e-02\n6.288000e-03\n-2.208235e+00\n-5.674900e-02\n-2.306000e-03\n1.424744e+00\nCAT RIVER (EAST CHANNEL);LAKE ST JOSEPH;ST JOS...\n-99999999\n-90.745713\n51.058944\n-1.000000e+12\n526.421232\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-91.39550 50.91117, -91.39555 ...\n\n\n56495\n7420501022\nno_data\n742233R999968;742233R000007;742233R000003\n57;8;4\n3\n7.558788e+08\n7.558788e+08\n2023-12-14T14:19:39Z\n3.105560e+02\n9.900000e-02\n7.300000e-02\n6.540000e-01\n3.935470e-01\n2.443000e-03\n1.602010e-01\n2.443000e-03\n1.100000e-02\n5.434642e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-2.887526e+01\n-1.217310e-01\n-1.435000e-02\n-1.513400e-02\n6.583000e-03\n-2.268862e+00\n-5.500000e-02\n-2.866000e-03\n1.664425e+00\nLAKE TUSTIN\n-99999999\n-93.665611\n44.206288\n-1.000000e+12\n0.546300\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-93.66006 44.20938, -93.66012 ...\n\n\n\n\n56496 rows × 51 columns\n\n\n\n\n\n\nQuickly plot the SWOT lakes data\n\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp2.plot(ax=ax, color='black')\n\n\n\n\n\n\n\n\nAccessing the remaining files is different than the shp files above. We do not need to read the shapefiles within a zip file using something like Fiona session (or to download and unzip in the cloud) because the following SWOT HR collections are stored in netCDF files in the cloud. For the rest of the products, we will open via xarray, not geopandas.\n\n\n3. Water Mask Pixel Cloud NetCDF\n\n\nSearch for data collection and time of interest\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\npixc_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_PIXC_2.0', \n #granule_name = '*_009_*', # pass number 9 if we want to filter further\n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n bounding_box = (-106.62, 38.809, -106.54, 38.859)) # Lake Travis near Austin, TX\n\nGranules found: 39\n\n\n\n\nOpen data using xarray\nThe pixel cloud netCDF files are formatted with three groups titled, “pixel cloud”, “tvp”, or “noise” (more detail here). In order to access the coordinates and variables within the file, a group must be specified when calling xarray open_dataset.\n\nds_PIXC = xr.open_mfdataset(earthaccess.open([pixc_results[0]]), group = 'pixel_cloud', engine='h5netcdf')\nds_PIXC\n\nOpening 1 granules, approx size: 0.22 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (points: 2357958, complex_depth: 2,\n num_pixc_lines: 3278)\nCoordinates:\n latitude (points) float64 dask.array<chunksize=(471592,), meta=np.ndarray>\n longitude (points) float64 dask.array<chunksize=(471592,), meta=np.ndarray>\nDimensions without coordinates: points, complex_depth, num_pixc_lines\nData variables: (12/61)\n azimuth_index (points) float64 dask.array<chunksize=(785986,), meta=np.ndarray>\n range_index (points) float64 dask.array<chunksize=(785986,), meta=np.ndarray>\n interferogram (points, complex_depth) float32 dask.array<chunksize=(785986, 1), meta=np.ndarray>\n power_plus_y (points) float32 dask.array<chunksize=(785986,), meta=np.ndarray>\n power_minus_y (points) float32 dask.array<chunksize=(785986,), meta=np.ndarray>\n coherent_power (points) float32 dask.array<chunksize=(785986,), meta=np.ndarray>\n ... ...\n pixc_line_qual (num_pixc_lines) float64 dask.array<chunksize=(3278,), meta=np.ndarray>\n pixc_line_to_tvp (num_pixc_lines) float32 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_first_valid (num_pixc_lines) float64 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_last_valid (num_pixc_lines) float64 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_first_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_last_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3278,), meta=np.ndarray>\nAttributes:\n description: cloud of geolocated interferogram pixels\n interferogram_size_azimuth: 3278\n interferogram_size_range: 5623\n looks_to_efflooks: 1.5509709858820855\n num_azimuth_looks: 7.0\n azimuth_offset: 7xarray.DatasetDimensions:points: 2357958complex_depth: 2num_pixc_lines: 3278Coordinates: (2)latitude(points)float64dask.array<chunksize=(471592,), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northquality_flag :geolocation_qualvalid_min :-80.0valid_max :80.0comment :Geodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(471592,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-180.0\n\nvalid_max :\n\n180.0\n\ncomment :\n\nLongitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (61)\n\n\n\n\n\n\n\nazimuth_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram azimuth index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram azimuth index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nrange_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram range index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram range index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninterferogram\n\n\n(points, complex_depth)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n-1e+20\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nComplex unflattened rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.00 MiB\n\n\nShape\n(2357958, 2)\n(785986, 1)\n\n\nDask graph\n6 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 2357958\n\n\n\n\n\n\n\n\npower_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for plus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the plus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npower_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for minus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the minus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ncoherent_power\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent power combination of minus_y and plus_y channels\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower computed by combining the plus_y and minus_y channels coherently by co-aligning the phases (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nx_factor_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for plus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the plus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nx_factor_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for minus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the minus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nNoisy estimate of the fraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nUncertainty estimate of the water fraction estimate (width of noisy water frac estimate distribution).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nclassification\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2357958,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclassification\n\nquality_flag :\n\nclassification_qual\n\nflag_meanings :\n\nland land_near_water water_near_land open_water dark_water low_coh_water_near_land open_low_coh_water\n\nflag_values :\n\n[1 2 3 4 5 6 7]\n\nvalid_min :\n\n1\n\nvalid_max :\n\n7\n\ncomment :\n\nFlags indicating water detection results.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n8.99 MiB\n\n\nShape\n(2357958,)\n(2357958,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nfalse_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfalse detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting water when there is none.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nmissed_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmissed detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting no water when there is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nprior_water_prob\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nprior water probability\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nPrior probability of water occurring.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nbright_land_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2357958,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbright land flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_bright_land bright_land bright_land_or_water\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating areas that are not typically water but are expected to be bright (e.g., urban areas, ice). Flag value 2 indicates cases where prior data indicate land, but where prior_water_prob indicates possible water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n8.99 MiB\n\n\nShape\n(2357958,)\n(2357958,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the height error caused by layover, which may not be reliable on a pixel by pixel basis, but may be useful to augment aggregated height uncertainties.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\neff_num_rare_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of rare looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken to form the rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nHeight of the pixel above the reference ellipsoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ncross_track\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npixel_area\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel area\n\nunits :\n\nm^2\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninc\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nphase_noise_std\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase noise standard deviation\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the phase noise standard deviation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndlatitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of latitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the latitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndlongitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of longitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the longitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferogram phase\n\nunits :\n\nm/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_droll\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to spacecraft roll\n\nunits :\n\nm/degrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the spacecraft roll.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_dbaseline\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferometric baseline\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferometric baseline.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_drange\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to range (delay)\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the range (delay).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndarea_dheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of pixel area to reference height\n\nunits :\n\nm^2/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the pixel area to the reference height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(471592,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(471592,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\neff_num_medium_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of medium looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken in forming the medium interferogram (after adaptive averaging).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0 uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the sig0 measurement. The value is given as an additive (not multiplicative) linear term (not a term in decibels).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nphase_unwrapping_region\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase unwrapping region index\n\nunits :\n\n1\n\nvalid_min :\n\n-1\n\nvalid_max :\n\n99999999\n\ncomment :\n\nPhase unwrapping region index.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nambiguity_cost1\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nambiguity_cost2\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity 2nd minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity 2nd minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninstrument_range_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument range correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to range before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninstrument_phase_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument phase correction\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to phase before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninstrument_baseline_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument baseline correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to baseline before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0 and x_factor_plus_y and x_factor_minus_y.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ngeoid\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2357958,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n8.99 MiB\n\n\nShape\n(2357958,)\n(2357958,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninterferogram_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nrare_power_suspect rare_phase_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded rare_power_bad rare_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 2048 4096 8192 16384 32768 262144 524288 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4161599488\n\ncomment :\n\nQuality flag for the interferogram quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nclassification_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_coherent_gain power_close_to_noise_floor detected_water_but_no_prior_water detected_water_but_bright_land water_false_detection_rate_suspect coherent_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded coherent_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 2048 8192 16384 32768 262144 524288 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3893159967\n\ncomment :\n\nQuality flag for the classification quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ngeolocation_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nlayover_significant phase_noise_suspect phase_unwrapping_suspect model_dry_tropo_cor_suspect model_wet_tropo_cor_suspect iono_cor_gim_ka_suspect xovercal_suspect medium_phase_suspect tvp_suspect sc_event_suspect small_karin_gap specular_ringing_degraded model_dry_tropo_cor_missing model_wet_tropo_cor_missing iono_cor_gim_ka_missing xovercal_missing geolocation_is_from_refloc no_geolocation_bad medium_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 32 64 4096 8192 16384 32768 524288 1048576 2097152 4194304 8388608 16777216 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4193841279\n\ncomment :\n\nQuality flag for the geolocation quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsig0_uncert_suspect sig0_cor_atmos_suspect noise_power_suspect xfactor_suspect rare_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded sig0_cor_atmos_missing noise_power_bad xfactor_bad rare_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 2048 8192 16384 32768 262144 524288 1048576 33554432 67108864 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3994871823\n\ncomment :\n\nQuality flag for sig0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npixc_line_qual\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_in_tile tvp_suspect sc_event_suspect small_karin_gap tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 8192 16384 32768 536870912 1073741824 2147483649]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3758153729\n\ncomment :\n\nQuality flag for pixel cloud data per rare-posted interferogram line (similar to slc_qual in the L1B_HR_SLC product)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.61 kiB\n25.61 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\npixc_line_to_tvp\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud rare line to tvp index\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel cloud rare radar grid line index to tvp index mapping\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.80 kiB\n12.80 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_first_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window starting index of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.61 kiB\n25.61 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_last_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window ending index of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.61 kiB\n25.61 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_first_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window starting cross-track distance in meters of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.80 kiB\n12.80 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_last_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window ending cross-track distance in meters of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.80 kiB\n12.80 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\nIndexes: (0)Attributes: (6)description :cloud of geolocated interferogram pixelsinterferogram_size_azimuth :3278interferogram_size_range :5623looks_to_efflooks :1.5509709858820855num_azimuth_looks :7.0azimuth_offset :7", + "text": "Accessing and Visualizing SWOT Datasets\n\nRequirement:\nThis tutorial can only be run in an AWS cloud instance running in us-west-2: NASA Earthdata Cloud data in S3 can be directly accessed via earthaccess python library; this access is limited to requests made within the US West (Oregon) (code: us-west-2) AWS region.\n\n\nLearning Objectives:\n\nAccess SWOT HR data prodcuts (archived in NASA Earthdata Cloud) within the AWS cloud, without downloading to local machine\nVisualize accessed data for a quick check\n\n\nSWOT Level 2 KaRIn High Rate Version 2.0 Datasets:\n\nRiver Vector Shapefile - SWOT_L2_HR_RIVERSP_2.0\nLake Vector Shapefile - SWOT_L2_HR_LAKESP_2.0\nWater Mask Pixel Cloud NetCDF - SWOT_L2_HR_PIXC_2.0\nWater Mask Pixel Cloud Vector Attribute NetCDF - SWOT_L2_HR_PIXCVec_2.0\nRaster NetCDF - SWOT_L2_HR_Raster_2.0\nSingle Look Complex Data product - SWOT_L1B_HR_SLC_2.0\n\nNotebook Author: Cassie Nickles, NASA PO.DAAC (Feb 2024) || Other Contributors: Zoe Walschots (PO.DAAC Summer Intern 2023), Catalina Taglialatela (NASA PO.DAAC), Luis Lopez (NASA NSIDC DAAC)\nLast updated: 7 Feb 2024\n\n\n\nLibraries Needed\n\nimport s3fs\nimport fiona\nimport xarray as xr\nimport pandas as pd\nimport geopandas as gpd\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport hvplot.xarray\nimport earthaccess\n\npd.set_option('display.max_columns', None) #make sure all columns displayed for shapefiles\n\n\n\n\n\n\n\n\n\n\n\n\nEarthdata Login\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. If you don’t already have one, please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up. We use earthaccess to authenticate your login credentials below.\n\nauth = earthaccess.login()\n\n\n\nSingle File Access\n\n1. River Vector Shapefiles\nThe s3 access link can be found using earthaccess data search. Since this collection consists of Reach and Node files, we need to extract only the granule for the Reach file. We do this by filtering for the ‘Reach’ title in the data link.\nAlternatively, Earthdata Search (see tutorial) can be used to search in a map graphic user interface.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for the data of interest\n\n#Retrieves granule from the day we want, in this case by passing to `earthdata.search_data` function the data collection shortname, temporal bounds, and filter by wildcards\nriver_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Reach*_009_NA*') # here we filter by Reach files (not node), pass=009, continent code=NA\n\nGranules found: 7\n\n\n\n\nSet up an s3fs session for Direct Cloud Access\ns3fs sessions are used for authenticated access to s3 bucket and allows for typical file-system style operations. Below we create session by passing in the data access information.\n\nfs_s3 = earthaccess.get_s3fs_session(results=river_results)\n\n\n\nCreate Fiona session to work with zip and embedded shapefiles in the AWS Cloud\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we will create a Fiona AWS session using the credentials from setting up the s3fs session above to access the shapefiles within the zip files. If we don’t do this, the alternative would be to download the data to the cloud environment (e.g. EC2 instance, user S3 bucket) and extract the .zip file there.\n\nfiona_session=fiona.session.AWSSession(\n aws_access_key_id=fs_s3.storage_options[\"key\"],\n aws_secret_access_key=fs_s3.storage_options[\"secret\"],\n aws_session_token=fs_s3.storage_options[\"token\"]\n )\n\n\n# Get the link for the first zip file\nriver_link = earthaccess.results.DataGranule.data_links(river_results[0], access='direct')[0]\n\n# We use the zip+ prefix so fiona knows that we are operating on a zip file\nriver_shp_url = f\"zip+{river_link}\"\n\nwith fiona.Env(session=fiona_session):\n SWOT_HR_shp1 = gpd.read_file(river_shp_url) \n\n#view the attribute table\nSWOT_HR_shp1 \n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n71224500951\n-1.000000e+12\n-1.000000e+12\nno_data\n48.517717\n-93.692086\nRainy River\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n1\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n71224700961, no_data, no_data, no_data\n71224300941, no_data, no_data, no_data\n325.899994\n0.044680\n208.0\n1480.031\n53\n244919.492\n10586.381484\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.76076 48.51651, -93.76035 48.5...\n\n\n1\n71224700013\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.777900\n-93.233350\nno_data\n3.364954e+02\n9.003000e-02\n2.290000e-03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n3.272000e-01\n8.486717e+02\n2.871400e-01\n-4.807161e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389051\n8389051\n3\n4194318\n1.338000e-03\n1\n-999\n0\n18\n1.000000e+00\n0\n-3.141705e+01\n-2.674060e-05\n-2.894793e-02\n-5.371819e-03\n-5.384998e-03\n5.780308e-03\n-2.241292e+00\n-1.634102e-02\n-8.003274e-03\n5.015258e-01\n1\n1\n71224700021, no_data, no_data, no_data\n71224700276, no_data, no_data, no_data\n335.600006\n0.000000\n1288.0\n1239358.412\n18\n3719.676\n3514.736672\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.21387 48.78466, -93.21403 48.7...\n\n\n2\n71224700021\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.772163\n-93.266891\nno_data\n3.365123e+02\n9.199000e-02\n1.902000e-02\n-1.000000e+12\n-1.000000e+12\n4.959662e-05\n1.018542e-05\n9.733590e-06\n2.575548e-05\n-1.000000e+12\n4.654752e-05\n6.202024e+01\n1.118013e+00\n-1.000000e+12\n-1.000000e+12\n9.836880e+04\n1.773253e+03\n9.836880e+04\n1.773300e+03\n9.836880e+04\n-1.000000e+12\n-1.000000e+12\n1.377000e-01\n1.509669e+02\n-1.470277e+01\n-5.017144e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n1\n2\n0.000000e+00\n1\n-999\n0\n6\n7.500000e-01\n0\n-3.135521e+01\n2.512828e-05\n-2.886645e-02\n-5.377388e-03\n-5.390327e-03\n5.783173e-03\n-2.241321e+00\n-1.657549e-02\n-8.003758e-03\n5.314556e-01\n2\n1\n71224700233, 71224700083, no_data, no_data\n71224700013, no_data, no_data, no_data\n335.600006\n0.000000\n30.0\n76609.119\n8\n5305.752\n1586.075688\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.25587 48.77340, -93.25628 48.7...\n\n\n3\n71224700033\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.733727\n-93.116424\nno_data\n3.365715e+02\n9.068000e-02\n1.112000e-02\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1.505600e+00\n3.730449e+02\n-1.512075e+02\n-3.862870e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n3\n4194318\n1.153940e-01\n1\n-999\n0\n18\n9.000000e-01\n0\n-3.153422e+01\n-1.678670e-05\n-2.908536e-02\n-5.353698e-03\n-5.371641e-03\n5.773116e-03\n-2.241031e+00\n-1.593641e-02\n-8.007598e-03\n3.984029e-01\n1\n1\n71224700286, no_data, no_data, no_data\n71224700041, no_data, no_data, no_data\n335.600006\n0.000000\n645.0\n297730.945\n20\n306795.237\n3904.961218\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-93.09779 48.73888, -93.09820 48.7...\n\n\n4\n71224700041\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.720271\n-93.113458\nno_data\n3.364742e+02\n9.085000e-02\n1.238000e-02\n-1.000000e+12\n-1.000000e+12\n-2.431140e-05\n1.166051e-05\n1.126799e-05\n-9.248820e-05\n-1.000000e+12\n1.647480e-05\n3.930469e+01\n1.013951e+00\n-1.000000e+12\n-1.000000e+12\n4.728760e+04\n1.219887e+03\n4.728760e+04\n1.219900e+03\n4.728760e+04\n-1.000000e+12\n-1.000000e+12\n2.925000e-01\n2.328550e+02\n-4.628440e+00\n-3.776046e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25166265\n25166265\n1\n6\n0.000000e+00\n1\n-999\n0\n5\n8.333333e-01\n0\n-3.152398e+01\n-3.509400e-06\n-2.906824e-02\n-5.351348e-03\n-5.371695e-03\n5.773071e-03\n-2.240743e+00\n-1.600031e-02\n-8.009073e-03\n3.901623e-01\n1\n1\n71224700033, no_data, no_data, no_data\n71224700053, no_data, no_data, no_data\n335.600006\n0.000000\n645.0\n0.000\n6\n302890.276\n1203.102119\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.12101 48.72305, -93.12060 48.7...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n926\n77125000241\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:38Z\n17.960957\n-100.025397\nno_data\n3.560650e+02\n1.501928e+02\n1.501928e+02\n-1.000000e+12\n-1.000000e+12\n1.139809e-03\n8.453720e-04\n8.453667e-04\n-1.968571e-04\n-1.000000e+12\n6.002469e+03\n6.442070e+01\n1.454903e+00\n-1.000000e+12\n-1.000000e+12\n5.130950e+04\n1.158794e+03\n4.143390e+04\n1.158800e+03\n5.130950e+04\n-1.000000e+12\n-1.000000e+12\n3.217900e+00\n6.496189e+01\n-6.441719e+03\n6.087360e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389051\n8389051\n1\n40966\n1.924710e-01\n0\n-999\n1\n4\n5.714286e-02\n0\n-8.767097e+00\n2.520024e-05\n1.047472e-01\n-2.491515e-03\n-1.416101e-03\n3.766508e-03\n-2.225335e+00\n-2.844600e-01\n-1.248337e-02\n-3.609023e-01\n1\n1\n77125000254, no_data, no_data, no_data\n77125000231, no_data, no_data, no_data\n358.600006\n65.289837\n96.0\n864.151\n70\n464330.310\n13953.442643\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-100.06409 17.97308, -100.06403 17...\n\n\n927\n77125000254\n-1.000000e+12\n-1.000000e+12\nno_data\n17.949648\n-99.995193\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n0\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n77125000263, no_data, no_data, no_data\n77125000241, no_data, no_data, no_data\n423.700012\n50.631649\n162.0\n21491.314\n2\n464735.375\n405.065100\n-1.000000e+12\n10286\n1\n1\n0\nLINESTRING (-99.99547 17.95148, -99.99564 17.9...\n\n\n928\n77125000261\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:47Z\n18.362207\n-100.696472\nno_data\n2.316304e+02\n9.208000e-02\n1.946000e-02\n-1.000000e+12\n-1.000000e+12\n9.017132e-04\n5.351440e-06\n4.431470e-06\n8.374171e-04\n-1.000000e+12\n3.976097e-05\n3.544730e+02\n2.232573e+00\n-1.000000e+12\n-1.000000e+12\n3.936467e+06\n2.479300e+04\n3.776529e+06\n2.479300e+04\n3.936467e+06\n-1.000000e+12\n-1.000000e+12\n1.037250e+01\n1.555118e+02\n-1.003980e+00\n-1.240390e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n1\n14\n4.063000e-02\n0\n-999\n0\n56\n1.000000e+00\n0\n-1.111140e+01\n1.232563e-05\n1.055168e-01\n-1.683211e-03\n-6.265789e-04\n3.857576e-03\n-2.255829e+00\n-3.061254e-01\n-1.237202e-02\n1.378732e-01\n2\n1\n77125000021, 77125000011, no_data, no_data\n77123000251, no_data, no_data, no_data\n232.000000\n6.028838\n195.0\n3624.715\n56\n325106.825\n11105.124379\n-1.000000e+12\n0\n4\n1\n0\nLINESTRING (-100.68734 18.40208, -100.68723 18...\n\n\n929\n77125000263\n-1.000000e+12\n-1.000000e+12\nno_data\n17.956269\n-99.961388\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n0\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n77125000273, no_data, no_data, no_data\n77125000254, no_data, no_data, no_data\n463.500000\n5.120043\n459.0\n43956.311\n49\n474450.182\n9714.807127\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.99398 17.94824, -99.99369 17.9...\n\n\n930\n77125000273\n-1.000000e+12\n-1.000000e+12\nno_data\n17.952683\n-99.906755\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n0\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n77125000283, no_data, no_data, no_data\n77125000263, no_data, no_data, no_data\n463.500000\n0.000000\n819.0\n283915.163\n49\n484179.822\n9729.640027\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.93256 17.94746, -99.93273 17.9...\n\n\n\n\n931 rows × 127 columns\n\n\n\n\n\nQuickly plot the SWOT river data\n\n# Simple plot\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp1.plot(ax=ax, color='black')\n\n\n\n\n\n\n\n\n\n# # Another way to plot geopandas dataframes is with `explore`, which also plots a basemap\n# SWOT_HR_shp1.explore()\n\n\n\n2. Lake Vector Shapefiles\nThe lake vector shapefiles can be accessed in the same way as the river shapefiles above.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for data of interest\n\nlake_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_LAKESP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Prior*_009_NA*') # here we filter by files with 'Prior' in the name (This collection has three options: Obs, Unassigned, and Prior), pass #8 and continent code=NA\n\nGranules found: 3\n\n\n\n\nSet up an s3fs session for Direct Cloud Access\ns3fs sessions are used for authenticated access to s3 bucket and allows for typical file-system style operations. Below we create session by passing in the data access information.\n\nfs_s3 = earthaccess.get_s3fs_session(results=lake_results)\n\n\n\nCreate Fiona session to work with zip and embedded shapefiles in the AWS Cloud\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we will create a Fiona AWS session using the credentials from setting up the s3fs session above to access the shapefiles within the zip files. If we don’t do this, the alternative would be to download the data to the cloud environment (e.g. EC2 instance, user S3 bucket) and extract the .zip file there.\n\nfiona_session=fiona.session.AWSSession(\n aws_access_key_id=fs_s3.storage_options[\"key\"],\n aws_secret_access_key=fs_s3.storage_options[\"secret\"],\n aws_session_token=fs_s3.storage_options[\"token\"]\n )\n\n\n# Get the link for the first zip file\nlake_link = earthaccess.results.DataGranule.data_links(lake_results[0], access='direct')[0]\n\n# We use the zip+ prefix so fiona knows that we are operating on a zip file\nlake_shp_url = f\"zip+{lake_link}\"\n\nwith fiona.Env(session=fiona_session):\n SWOT_HR_shp2 = gpd.read_file(lake_shp_url) \n\n#view the attribute table\nSWOT_HR_shp2\n\n\n\n\n\n\n\n\nlake_id\nreach_id\nobs_id\noverlap\nn_overlap\ntime\ntime_tai\ntime_str\nwse\nwse_u\nwse_r_u\nwse_std\narea_total\narea_tot_u\narea_detct\narea_det_u\nlayovr_val\nxtrk_dist\nds1_l\nds1_l_u\nds1_q\nds1_q_u\nds2_l\nds2_l_u\nds2_q\nds2_q_u\nquality_f\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nxovr_cal_q\ngeoid_hght\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nlake_name\np_res_id\np_lon\np_lat\np_ref_wse\np_ref_area\np_date_t0\np_ds_t0\np_storage\ngeometry\n\n\n\n\n0\n7120818392\nno_data\n712238L999960\n100\n1\n7.558788e+08\n7.558788e+08\n2023-12-14T14:20:39Z\n4.221900e+02\n3.900000e-02\n3.100000e-02\n1.750000e-01\n1.133420e-01\n2.746000e-03\n1.123950e-01\n2.746000e-03\n2.450000e-01\n-2.700895e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n8.362160e-01\n2\n-999\n0\n0\n-2.960103e+01\n-1.076270e-01\n-1.385000e-02\n-1.446900e-02\n6.530000e-03\n-2.219912e+00\n-4.322200e-02\n-2.460000e-03\n-8.323030e-01\nno_data\n-99999999\n-93.370529\n47.725706\n-1.000000e+12\n0.067500\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-93.37004 47.72747, -93.36976 ...\n\n\n1\n7120818432\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n2\n-999\n-999\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\nSOUTH STURGEON LAKE\n-99999999\n-93.063382\n47.636276\n-1.000000e+12\n0.734400\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n2\n7120818512\nno_data\n712239L999974\n91\n1\n7.558788e+08\n7.558788e+08\n2023-12-14T14:20:39Z\n4.035210e+02\n3.800000e-02\n2.900000e-02\n3.670000e-01\n4.746580e-01\n6.040000e-03\n3.230260e-01\n6.040000e-03\n1.100000e-01\n-4.768885e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-2.928009e+01\n-1.069980e-01\n-1.387600e-02\n-1.449100e-02\n6.541000e-03\n-2.224427e+00\n-4.345700e-02\n-2.448000e-03\n-1.489370e+00\nCONNORS LAKE\n-99999999\n-93.634992\n47.777938\n-1.000000e+12\n0.419400\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-93.64085 47.77833, -93.64070 ...\n\n\n3\n7120818532\nno_data\n712238L999960\n100\n1\n7.558788e+08\n7.558788e+08\n2023-12-14T14:20:39Z\n4.214720e+02\n9.700000e-02\n5.700000e-02\n3.140000e-01\n5.936400e-02\n2.015000e-03\n5.936400e-02\n2.015000e-03\n1.100000e-02\n-2.658368e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n0.000000e+00\n2\n-999\n0\n0\n-2.961158e+01\n-1.076620e-01\n-1.385000e-02\n-1.446900e-02\n6.530000e-03\n-2.220099e+00\n-4.328800e-02\n-2.460000e-03\n-8.189060e-01\nno_data\n-99999999\n-93.367313\n47.718575\n-1.000000e+12\n0.018900\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.36683 47.72159, -93.36655 47.721...\n\n\n4\n7120818542\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n2\n-999\n-999\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\nno_data\n-99999999\n-93.042420\n47.711142\n-1.000000e+12\n0.031500\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n56491\n7131519532\nno_data\n713254R999944;713255R000006\n45;42\n2\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:19Z\n1.283300e+01\n7.500000e-02\n5.700000e-02\n1.700000e-01\n7.491100e-02\n1.923000e-03\n7.437200e-02\n1.923000e-03\n1.000000e-03\n2.384581e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-4.790753e+01\n-7.896700e-02\n-4.073000e-03\n-2.923000e-03\n5.666000e-03\n-2.268012e+00\n-1.023750e-01\n-2.140000e-03\n7.063360e-01\nno_data\n-99999999\n-88.000840\n56.331699\n-1.000000e+12\n0.056700\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-87.99912 56.33127, -87.99922 ...\n\n\n56492\n7131519632\nno_data\n713254R999943;713255R000008\n48;20\n2\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:19Z\n1.074100e+01\n1.570000e-01\n1.460000e-01\n1.420000e-01\n3.342300e-02\n1.435000e-03\n3.152200e-02\n1.435000e-03\n5.000000e-03\n2.730958e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-4.786691e+01\n-7.908800e-02\n-3.548000e-03\n-2.638000e-03\n5.728000e-03\n-2.268497e+00\n-1.023450e-01\n-2.141000e-03\n8.137400e-01\nno_data\n-99999999\n-87.948521\n56.320464\n-1.000000e+12\n0.025200\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-87.94670 56.32014, -87.94649 ...\n\n\n56493\n7131519662\nno_data\n713255R000009;713254R999940\n42;33\n2\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:19Z\n9.208000e+00\n1.030000e-01\n1.260000e-01\n1.410000e-01\n2.864300e-02\n1.112000e-03\n2.729100e-02\n1.112000e-03\n3.400000e-02\n2.882420e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-4.784918e+01\n-7.914000e-02\n-3.278000e-03\n-2.509000e-03\n6.730000e-03\n-2.268922e+00\n-1.023670e-01\n-2.142000e-03\n8.608050e-01\nno_data\n-99999999\n-87.925618\n56.315773\n-1.000000e+12\n0.021600\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-87.92352 56.31520, -87.92363 ...\n\n\n56494\n7131560212\nno_data\n713245R000001;713245R999966;713245R999958;7132...\n70;0;0;0;0;0;0;0;0;0;0\n11\n7.558789e+08\n7.558789e+08\n2023-12-14T14:21:43Z\n3.717920e+02\n1.000000e-03\n1.000000e-03\n3.720000e-01\n3.853027e+02\n3.084073e+00\n3.231617e+02\n3.084073e+00\n7.000000e-03\n4.695466e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n1\n0\n-3.585787e+01\n-9.732200e-02\n-1.303500e-02\n-1.356500e-02\n6.288000e-03\n-2.208235e+00\n-5.674900e-02\n-2.306000e-03\n1.424744e+00\nCAT RIVER (EAST CHANNEL);LAKE ST JOSEPH;ST JOS...\n-99999999\n-90.745713\n51.058944\n-1.000000e+12\n526.421232\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-91.39550 50.91117, -91.39555 ...\n\n\n56495\n7420501022\nno_data\n742233R999968;742233R000007;742233R000003\n57;8;4\n3\n7.558788e+08\n7.558788e+08\n2023-12-14T14:19:39Z\n3.105560e+02\n9.900000e-02\n7.300000e-02\n6.540000e-01\n3.935470e-01\n2.443000e-03\n1.602010e-01\n2.443000e-03\n1.100000e-02\n5.434642e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n0\n-1.000000e+12\n2\n-999\n0\n0\n-2.887526e+01\n-1.217310e-01\n-1.435000e-02\n-1.513400e-02\n6.583000e-03\n-2.268862e+00\n-5.500000e-02\n-2.866000e-03\n1.664425e+00\nLAKE TUSTIN\n-99999999\n-93.665611\n44.206288\n-1.000000e+12\n0.546300\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-93.66006 44.20938, -93.66012 ...\n\n\n\n\n56496 rows × 51 columns\n\n\n\n\n\nQuickly plot the SWOT lakes data\n\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp2.plot(ax=ax, color='black')\n\n\n\n\n\n\n\n\nAccessing the remaining files is different than the shp files above. We do not need to read the shapefiles within a zip file using something like Fiona session (or to download and unzip in the cloud) because the following SWOT HR collections are stored in netCDF files in the cloud. For the rest of the products, we will open via xarray, not geopandas.\n\n\n3. Water Mask Pixel Cloud NetCDF\n\n\nSearch for data collection and time of interest\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\npixc_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_PIXC_2.0', \n #granule_name = '*_009_*', # pass number 9 if we want to filter further\n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n bounding_box = (-106.62, 38.809, -106.54, 38.859)) # Lake Travis near Austin, TX\n\nGranules found: 39\n\n\n\n\nOpen data using xarray\nThe pixel cloud netCDF files are formatted with three groups titled, “pixel cloud”, “tvp”, or “noise” (more detail here). In order to access the coordinates and variables within the file, a group must be specified when calling xarray open_dataset.\n\nds_PIXC = xr.open_mfdataset(earthaccess.open([pixc_results[0]]), group = 'pixel_cloud', engine='h5netcdf')\nds_PIXC\n\nOpening 1 granules, approx size: 0.22 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (points: 2357958, complex_depth: 2,\n num_pixc_lines: 3278)\nCoordinates:\n latitude (points) float64 dask.array<chunksize=(471592,), meta=np.ndarray>\n longitude (points) float64 dask.array<chunksize=(471592,), meta=np.ndarray>\nDimensions without coordinates: points, complex_depth, num_pixc_lines\nData variables: (12/61)\n azimuth_index (points) float64 dask.array<chunksize=(785986,), meta=np.ndarray>\n range_index (points) float64 dask.array<chunksize=(785986,), meta=np.ndarray>\n interferogram (points, complex_depth) float32 dask.array<chunksize=(785986, 1), meta=np.ndarray>\n power_plus_y (points) float32 dask.array<chunksize=(785986,), meta=np.ndarray>\n power_minus_y (points) float32 dask.array<chunksize=(785986,), meta=np.ndarray>\n coherent_power (points) float32 dask.array<chunksize=(785986,), meta=np.ndarray>\n ... ...\n pixc_line_qual (num_pixc_lines) float64 dask.array<chunksize=(3278,), meta=np.ndarray>\n pixc_line_to_tvp (num_pixc_lines) float32 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_first_valid (num_pixc_lines) float64 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_last_valid (num_pixc_lines) float64 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_first_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3278,), meta=np.ndarray>\n data_window_last_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3278,), meta=np.ndarray>\nAttributes:\n description: cloud of geolocated interferogram pixels\n interferogram_size_azimuth: 3278\n interferogram_size_range: 5623\n looks_to_efflooks: 1.5509709858820855\n num_azimuth_looks: 7.0\n azimuth_offset: 7xarray.DatasetDimensions:points: 2357958complex_depth: 2num_pixc_lines: 3278Coordinates: (2)latitude(points)float64dask.array<chunksize=(471592,), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northquality_flag :geolocation_qualvalid_min :-80.0valid_max :80.0comment :Geodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(471592,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-180.0\n\nvalid_max :\n\n180.0\n\ncomment :\n\nLongitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (61)\n\n\n\n\n\n\n\nazimuth_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram azimuth index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram azimuth index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nrange_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram range index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram range index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninterferogram\n\n\n(points, complex_depth)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n-1e+20\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nComplex unflattened rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.00 MiB\n\n\nShape\n(2357958, 2)\n(785986, 1)\n\n\nDask graph\n6 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 2357958\n\n\n\n\n\n\n\n\npower_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for plus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the plus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npower_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for minus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the minus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ncoherent_power\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent power combination of minus_y and plus_y channels\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower computed by combining the plus_y and minus_y channels coherently by co-aligning the phases (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nx_factor_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for plus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the plus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nx_factor_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for minus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the minus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nNoisy estimate of the fraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nUncertainty estimate of the water fraction estimate (width of noisy water frac estimate distribution).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nclassification\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2357958,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclassification\n\nquality_flag :\n\nclassification_qual\n\nflag_meanings :\n\nland land_near_water water_near_land open_water dark_water low_coh_water_near_land open_low_coh_water\n\nflag_values :\n\n[1 2 3 4 5 6 7]\n\nvalid_min :\n\n1\n\nvalid_max :\n\n7\n\ncomment :\n\nFlags indicating water detection results.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n8.99 MiB\n\n\nShape\n(2357958,)\n(2357958,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nfalse_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfalse detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting water when there is none.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nmissed_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmissed detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting no water when there is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nprior_water_prob\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nprior water probability\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nPrior probability of water occurring.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nbright_land_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2357958,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbright land flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_bright_land bright_land bright_land_or_water\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating areas that are not typically water but are expected to be bright (e.g., urban areas, ice). Flag value 2 indicates cases where prior data indicate land, but where prior_water_prob indicates possible water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n8.99 MiB\n\n\nShape\n(2357958,)\n(2357958,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the height error caused by layover, which may not be reliable on a pixel by pixel basis, but may be useful to augment aggregated height uncertainties.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\neff_num_rare_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of rare looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken to form the rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nHeight of the pixel above the reference ellipsoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ncross_track\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npixel_area\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel area\n\nunits :\n\nm^2\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninc\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nphase_noise_std\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase noise standard deviation\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the phase noise standard deviation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndlatitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of latitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the latitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndlongitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of longitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the longitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferogram phase\n\nunits :\n\nm/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_droll\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to spacecraft roll\n\nunits :\n\nm/degrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the spacecraft roll.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_dbaseline\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferometric baseline\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferometric baseline.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndheight_drange\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to range (delay)\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the range (delay).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ndarea_dheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of pixel area to reference height\n\nunits :\n\nm^2/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the pixel area to the reference height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(471592,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(471592,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n3.60 MiB\n\n\nShape\n(2357958,)\n(471592,)\n\n\nDask graph\n5 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\neff_num_medium_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of medium looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken in forming the medium interferogram (after adaptive averaging).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0 uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the sig0 measurement. The value is given as an additive (not multiplicative) linear term (not a term in decibels).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nphase_unwrapping_region\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase unwrapping region index\n\nunits :\n\n1\n\nvalid_min :\n\n-1\n\nvalid_max :\n\n99999999\n\ncomment :\n\nPhase unwrapping region index.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nambiguity_cost1\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nambiguity_cost2\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity 2nd minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity 2nd minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninstrument_range_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument range correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to range before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninstrument_phase_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument phase correction\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to phase before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninstrument_baseline_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument baseline correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to baseline before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0 and x_factor_plus_y and x_factor_minus_y.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ngeoid\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n3.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2357958,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n8.99 MiB\n8.99 MiB\n\n\nShape\n(2357958,)\n(2357958,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ninterferogram_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nrare_power_suspect rare_phase_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded rare_power_bad rare_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 2048 4096 8192 16384 32768 262144 524288 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4161599488\n\ncomment :\n\nQuality flag for the interferogram quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nclassification_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_coherent_gain power_close_to_noise_floor detected_water_but_no_prior_water detected_water_but_bright_land water_false_detection_rate_suspect coherent_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded coherent_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 2048 8192 16384 32768 262144 524288 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3893159967\n\ncomment :\n\nQuality flag for the classification quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\ngeolocation_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nlayover_significant phase_noise_suspect phase_unwrapping_suspect model_dry_tropo_cor_suspect model_wet_tropo_cor_suspect iono_cor_gim_ka_suspect xovercal_suspect medium_phase_suspect tvp_suspect sc_event_suspect small_karin_gap specular_ringing_degraded model_dry_tropo_cor_missing model_wet_tropo_cor_missing iono_cor_gim_ka_missing xovercal_missing geolocation_is_from_refloc no_geolocation_bad medium_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 32 64 4096 8192 16384 32768 524288 1048576 2097152 4194304 8388608 16777216 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4193841279\n\ncomment :\n\nQuality flag for the geolocation quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(785986,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsig0_uncert_suspect sig0_cor_atmos_suspect noise_power_suspect xfactor_suspect rare_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded sig0_cor_atmos_missing noise_power_bad xfactor_bad rare_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 2048 8192 16384 32768 262144 524288 1048576 33554432 67108864 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3994871823\n\ncomment :\n\nQuality flag for sig0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n17.99 MiB\n6.00 MiB\n\n\nShape\n(2357958,)\n(785986,)\n\n\nDask graph\n3 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2357958 1\n\n\n\n\n\n\n\n\npixc_line_qual\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_in_tile tvp_suspect sc_event_suspect small_karin_gap tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 8192 16384 32768 536870912 1073741824 2147483649]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3758153729\n\ncomment :\n\nQuality flag for pixel cloud data per rare-posted interferogram line (similar to slc_qual in the L1B_HR_SLC product)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.61 kiB\n25.61 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\npixc_line_to_tvp\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud rare line to tvp index\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel cloud rare radar grid line index to tvp index mapping\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.80 kiB\n12.80 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_first_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window starting index of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.61 kiB\n25.61 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_last_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window ending index of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.61 kiB\n25.61 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_first_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window starting cross-track distance in meters of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.80 kiB\n12.80 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\n\n\ndata_window_last_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3278,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window ending cross-track distance in meters of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.80 kiB\n12.80 kiB\n\n\nShape\n(3278,)\n(3278,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3278 1\n\n\n\n\n\n\nIndexes: (0)Attributes: (6)description :cloud of geolocated interferogram pixelsinterferogram_size_azimuth :3278interferogram_size_range :5623looks_to_efflooks :1.5509709858820855num_azimuth_looks :7.0azimuth_offset :7", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2472,7 +2472,7 @@ "href": "notebooks/datasets/SWOT_Raster_Notebook_cloud.html#authentication-with-earthaccess", "title": "Working with SWOT Level 2 Water Mask Raster Image Data Product:", "section": "Authentication with earthaccess", - "text": "Authentication with earthaccess\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login()\n\n\nSearch for SWOT Raster products using earthaccess\nEach dataset has its own unique collection concept ID. For the SWOT_L2_HR_Raster_2.0 dataset, we can find the collection ID here.\nFor this tutorial, we are looking at the Lake Mead Reservoir in the United States.\nWe used bbox finder to get the exact coordinates for our area of interest.\n\nraster_results = earthaccess.search_data(\n short_name = 'SWOT_L2_HR_RASTER_2.0',\n bounding_box=(-115.112686,35.740939,-114.224167,36.937819),\n temporal =('2024-02-01 12:00:00', '2024-02-01 23:59:59'),\n granule_name = '*_100m_*', #specify we are interested in the 100m standard raster\n count =200\n)\n\nGranules found: 2\n\n\n\n\nVisualizing Multiple Tiles\nLet’s now visualize multiple raster tiles that we searched and explore the data.\nUtilizing xarray.open_mfdataset which supports the opening of multiple files.\n\nds = xr.open_mfdataset(earthaccess.open(raster_results), engine='h5netcdf',combine='nested', concat_dim='x')\nds\n\nOpening 2 granules, approx size: 0.07 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (y: 2784, x: 3074)\nCoordinates:\n * y (y) float64 3.899e+06 3.899e+06 ... 4.177e+06\n * x (x) float64 5.391e+05 5.392e+05 ... 7.217e+05\nData variables: (12/39)\n crs (x) object b'1' b'1' b'1' b'1' ... b'1' b'1' b'1'\n longitude (y, x) float64 dask.array<chunksize=(512, 513), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(512, 513), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(2784, 1538), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(768, 769), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2024-02-05T08:37:45Z : Creation\n platform: SWOT\n references: V1.2.1\n ... ...\n x_min: 539100.0\n x_max: 692800.0\n y_min: 4023100.0\n y_max: 4176900.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:y: 2784x: 3074Coordinates: (2)y(y)float643.899e+06 3.899e+06 ... 4.177e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([3898600., 3898700., 3898800., ..., 4176700., 4176800., 4176900.])x(x)float645.391e+05 5.392e+05 ... 7.217e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([539100., 539200., 539300., ..., 721500., 721600., 721700.])Data variables: (39)crs(x)objectb'1' b'1' b'1' ... b'1' b'1' b'1'long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 11Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-117.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]comment :UTM zone coordinate reference system.array([b'1', b'1', b'1', ..., b'1', b'1', b'1'], dtype=object)longitude(y, x)float64dask.array<chunksize=(512, 513), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(512, 513), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded dark_water_degraded low_coherence_water_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 1048576 2097152 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4114378918\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111233454\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111364519\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 513), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 513), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\nIndexes: (2)yPandasIndexPandasIndex(Float64Index([3898600.0, 3898700.0, 3898800.0, 3898900.0, 3899000.0, 3899100.0,\n 3899200.0, 3899300.0, 3899400.0, 3899500.0,\n ...\n 4176000.0, 4176100.0, 4176200.0, 4176300.0, 4176400.0, 4176500.0,\n 4176600.0, 4176700.0, 4176800.0, 4176900.0],\n dtype='float64', name='y', length=2784))xPandasIndexPandasIndex(Float64Index([539100.0, 539200.0, 539300.0, 539400.0, 539500.0, 539600.0,\n 539700.0, 539800.0, 539900.0, 540000.0,\n ...\n 720800.0, 720900.0, 721000.0, 721100.0, 721200.0, 721300.0,\n 721400.0, 721500.0, 721600.0, 721700.0],\n dtype='float64', name='x', length=3074))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2024-02-05T08:37:45Z : Creationplatform :SWOTreferences :V1.2.1reference_document :JPL D-56416 - Revision C - December 8, 2023contact :podaac@podaac.jpl.nasa.govcycle_number :10pass_number :218scene_number :45tile_numbers :[88 89 90 91 88 89 90 91]tile_names :218_088L, 218_089L, 218_090L, 218_091L, 218_088R, 218_089R, 218_090R, 218_091Rtile_polarizations :H, H, H, H, V, V, V, Vcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM11S_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.1.1time_granule_start :2024-02-01T18:38:14.266613Ztime_granule_end :2024-02-01T18:38:35.362539Ztime_coverage_start :2024-02-01T18:38:14.805141Ztime_coverage_end :2024-02-01T18:38:34.816548Zgeospatial_lon_min :-116.55823577002582geospatial_lon_max :-114.84459394683485geospatial_lat_min :36.350992807631336geospatial_lat_max :37.724496129136035left_first_longitude :-115.14314896157633left_first_latitude :37.724496129136035left_last_longitude :-114.84459394683485left_last_latitude :36.5951883116925right_first_longitude :-116.55823577002582right_first_latitude :37.474717676188774right_last_longitude :-116.24045666354958right_last_latitude :36.350992807631336xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_010_218_088L_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_089L_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_088R_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_089R_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091R_20240201T183834_20240201T183845_PIC0_01.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_010_218_088L_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_089L_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_088R_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_089R_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091R_20240201T183834_20240201T183845_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :11mgrs_latitude_band :Sx_min :539100.0x_max :692800.0y_min :4023100.0y_max :4176900.0institution :CNESproduct_version :01", + "text": "Authentication with earthaccess\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login()\n\n\nSearch for SWOT Raster products using earthaccess\nEach dataset has its own unique collection concept ID. For the SWOT_L2_HR_Raster_2.0 dataset, we can find the collection ID here.\nFor this tutorial, we are looking at the Lake Mead Reservoir in the United States.\nWe used bbox finder to get the exact coordinates for our area of interest.\n\nraster_results = earthaccess.search_data(\n short_name = 'SWOT_L2_HR_RASTER_2.0',\n bounding_box=(-115.112686,35.740939,-114.224167,36.937819),\n temporal =('2024-02-01 12:00:00', '2024-02-01 23:59:59'),\n granule_name = '*_100m_*', #specify we are interested in the 100m standard raster\n count =200\n)\n\nGranules found: 2\n\n\n\n\nVisualizing Multiple Tiles\nLet’s now visualize multiple raster tiles that we searched and explore the data.\nUtilizing xarray.open_mfdataset which supports the opening of multiple files.\n\nds = xr.open_mfdataset(earthaccess.open(raster_results), engine='h5netcdf',combine='nested', concat_dim='x')\nds\n\nOpening 2 granules, approx size: 0.07 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (y: 2784, x: 3074)\nCoordinates:\n * y (y) float64 3.899e+06 3.899e+06 ... 4.177e+06\n * x (x) float64 5.391e+05 5.392e+05 ... 7.217e+05\nData variables: (12/39)\n crs (x) object b'1' b'1' b'1' b'1' ... b'1' b'1' b'1'\n longitude (y, x) float64 dask.array<chunksize=(512, 513), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(512, 513), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(2784, 1538), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(768, 769), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(768, 769), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2024-02-05T08:37:45Z : Creation\n platform: SWOT\n references: V1.2.1\n ... ...\n x_min: 539100.0\n x_max: 692800.0\n y_min: 4023100.0\n y_max: 4176900.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:y: 2784x: 3074Coordinates: (2)y(y)float643.899e+06 3.899e+06 ... 4.177e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([3898600., 3898700., 3898800., ..., 4176700., 4176800., 4176900.])x(x)float645.391e+05 5.392e+05 ... 7.217e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([539100., 539200., 539300., ..., 721500., 721600., 721700.])Data variables: (39)crs(x)objectb'1' b'1' b'1' ... b'1' b'1' b'1'long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 11Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-117.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 11N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-117],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32611\"]]comment :UTM zone coordinate reference system.array([b'1', b'1', b'1', ..., b'1', b'1', b'1'], dtype=object)longitude(y, x)float64dask.array<chunksize=(512, 513), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(512, 513), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded dark_water_degraded low_coherence_water_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 1048576 2097152 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4114378918\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111233454\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111364519\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 513), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(512, 513), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n2.87 MiB\n\n\nShape\n(2784, 3074)\n(734, 513)\n\n\nDask graph\n30 chunks in 23 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n65.29 MiB\n7.32 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(2784, 1538), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n16.33 MiB\n\n\nShape\n(2784, 3074)\n(2784, 1538)\n\n\nDask graph\n2 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(768, 769), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n32.65 MiB\n3.66 MiB\n\n\nShape\n(2784, 3074)\n(1247, 769)\n\n\nDask graph\n12 chunks in 23 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 3074 2784\n\n\n\n\n\nIndexes: (2)yPandasIndexPandasIndex(Float64Index([3898600.0, 3898700.0, 3898800.0, 3898900.0, 3899000.0, 3899100.0,\n 3899200.0, 3899300.0, 3899400.0, 3899500.0,\n ...\n 4176000.0, 4176100.0, 4176200.0, 4176300.0, 4176400.0, 4176500.0,\n 4176600.0, 4176700.0, 4176800.0, 4176900.0],\n dtype='float64', name='y', length=2784))xPandasIndexPandasIndex(Float64Index([539100.0, 539200.0, 539300.0, 539400.0, 539500.0, 539600.0,\n 539700.0, 539800.0, 539900.0, 540000.0,\n ...\n 720800.0, 720900.0, 721000.0, 721100.0, 721200.0, 721300.0,\n 721400.0, 721500.0, 721600.0, 721700.0],\n dtype='float64', name='x', length=3074))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2024-02-05T08:37:45Z : Creationplatform :SWOTreferences :V1.2.1reference_document :JPL D-56416 - Revision C - December 8, 2023contact :podaac@podaac.jpl.nasa.govcycle_number :10pass_number :218scene_number :45tile_numbers :[88 89 90 91 88 89 90 91]tile_names :218_088L, 218_089L, 218_090L, 218_091L, 218_088R, 218_089R, 218_090R, 218_091Rtile_polarizations :H, H, H, H, V, V, V, Vcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM11S_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.1.1time_granule_start :2024-02-01T18:38:14.266613Ztime_granule_end :2024-02-01T18:38:35.362539Ztime_coverage_start :2024-02-01T18:38:14.805141Ztime_coverage_end :2024-02-01T18:38:34.816548Zgeospatial_lon_min :-116.55823577002582geospatial_lon_max :-114.84459394683485geospatial_lat_min :36.350992807631336geospatial_lat_max :37.724496129136035left_first_longitude :-115.14314896157633left_first_latitude :37.724496129136035left_last_longitude :-114.84459394683485left_last_latitude :36.5951883116925right_first_longitude :-116.55823577002582right_first_latitude :37.474717676188774right_last_longitude :-116.24045666354958right_last_latitude :36.350992807631336xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_010_218_088L_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_089L_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_088R_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_089R_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXC_010_218_091R_20240201T183834_20240201T183845_PIC0_01.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_010_218_088L_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_089L_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090L_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091L_20240201T183834_20240201T183845_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_088R_20240201T183804_20240201T183815_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_089R_20240201T183814_20240201T183825_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_090R_20240201T183824_20240201T183835_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_218_091R_20240201T183834_20240201T183845_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :11mgrs_latitude_band :Sx_min :539100.0x_max :692800.0y_min :4023100.0y_max :4176900.0institution :CNESproduct_version :01", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2517,7 +2517,7 @@ "href": "notebooks/datasets/Localmachine_SWOT_Oceanography.html#swot-level-2-karin-low-rate-sea-surface-height-data-product", "title": "Download and Access SWOT Oceanography Cloud-hosted Data", "section": "1. SWOT Level 2 KaRIn Low Rate Sea Surface Height Data Product", - "text": "1. SWOT Level 2 KaRIn Low Rate Sea Surface Height Data Product\n\nSearch and Download Data!\nIt’s time to find our data! Below we are searching using earthaccess Python library.\n\n#retrieves granule from the day we want\nkarin_results = earthaccess.search_data(short_name = 'SWOT_L2_LR_SSH_2.0', \n temporal = (\"2024-02-01 12:00:00\", \"2024-02-01 19:43:00\"), \n granule_name = '*Expert*') # filter by files with \"Expert\" in file name. This collection has subcollections of 'Basic', 'Windwave', 'Unsmoothed' and 'Expert' granules.\n\nGranules found: 10\n\n\n\nearthaccess.download(karin_results, \"./data_downloads/SWOT_files\", provider='POCLOUD')\n\n Getting 10 granules, approx download size: 0.32 GB\nFile SWOT_L2_LR_SSH_Expert_010_210_20240201T113157_20240201T122325_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_211_20240201T122324_20240201T131449_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_212_20240201T131459_20240201T140619_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_213_20240201T140618_20240201T145746_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_214_20240201T145745_20240201T154830_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_215_20240201T154954_20240201T164039_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_216_20240201T164038_20240201T173206_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_218_20240201T182332_20240201T191500_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_217_20240201T173205_20240201T182333_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_219_20240201T191459_20240201T200627_PIC0_01.nc already downloaded\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_LR_SSH_Expert_010_210_20240201T113157_20240201T122325_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_211_20240201T122324_20240201T131449_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_212_20240201T131459_20240201T140619_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_213_20240201T140618_20240201T145746_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_214_20240201T145745_20240201T154830_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_215_20240201T154954_20240201T164039_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_216_20240201T164038_20240201T173206_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_217_20240201T173205_20240201T182333_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_218_20240201T182332_20240201T191500_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_219_20240201T191459_20240201T200627_PIC0_01.nc']\n\n\n\n#load downloaded data into dataset to be used for plotting\nds = xr.open_mfdataset(\"./data_downloads/SWOT_files/SWOT_L2_LR_SSH_Expert*.nc\", combine='nested', concat_dim=\"num_lines\", decode_times=False)\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (num_lines: 98660, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n latitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n longitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n time (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n time_tai (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n ssh_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_qual (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssha_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ... ...\n swh_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n swh_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n title: Level 2 Low Rate Sea Surfa...\n institution: CNES\n source: Ka-band radar interferometer\n history: 2024-02-03T22:27:17Z : Cre...\n platform: SWOT\n ... ...\n ellipsoid_semi_major_axis: 6378137.0\n ellipsoid_flattening: 0.0033528106647474805\n good_ocean_data_percent: 76.4772191457865\n ssha_variance: 0.4263933333980923\n references: V1.2.1\n equator_longitude: -5.36xarray.DatasetDimensions:num_lines: 98660num_pixels: 69num_sides: 2Coordinates: (4)latitude(num_lines, num_pixels)float64dask.array<chunksize=(9866, 69), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_min :-80000000valid_max :80000000comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\ntime\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4212113375\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n60000\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4279222239\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809460191\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_2_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3876569055\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.58 MB\n157.86 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nobject\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nquality_flag :\n\nswh_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 32 128 256 512 1024 2048 4096 8192 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809361848\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n25000\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862815\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427359\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862808\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427352\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n289\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from wave model\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ndegree\n\nvalid_min :\n\n0\n\nvalid_max :\n\n36000\n\ncomment :\n\nMean sea surface wave direction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nt02 mean wave period\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ns\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nu component of model wind\n\nstandard_name :\n\neastward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nv component of model wind\n\nstandard_name :\n\nnorthward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from radiometer\n\nstandard_name :\n\nwind_speed\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm/s\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-21000\n\nvalid_max :\n\n21000\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n35999\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000000000\n\ncomment :\n\nAltitude of the KMSF origin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_min :\n\n-3500\n\nvalid_max :\n\n3500\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n394.64 kB\n39.46 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[ 0 4 5 6 7 8 64]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n64\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n394.64 kB\n39.46 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nx_factor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n15000\n\nvalid_max :\n\n28000\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater vapor content from radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nliquid water content from radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ngeoid\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nMean dynamic topography above the geoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n10000\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n10000\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npole_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndac\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n12000\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n-15000\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-5000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from crossover calibration\n\nunits :\n\nm\n\nquality_flag :\n\nheight_cor_xover_qual\n\nvalid_min :\n\n-100000\n\nvalid_max :\n\n100000\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nmm/hr\n\nvalid_min :\n\n0\n\nvalid_max :\n\n200\n\ncomment :\n\nRain rate from weather model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nice_conc\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nconcentration of sea ice\n\nstandard_name :\n\nsea_ice_area_fraction\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nunits :\n\n%\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nConcentration of sea ice from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n20000\n\ncomment :\n\nVolumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\nIndexes: (0)Attributes: (62)Conventions :CF-1.7title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Waveinstitution :CNESsource :Ka-band radar interferometerhistory :2024-02-03T22:27:17Z : Creationplatform :SWOTreference_document :D-56407_SWOT_Product_Description_L2_LR_SSHcontact :podaac@jpl.nasa.govcycle_number :10pass_number :210equator_time :2024-02-01T11:57:39.935000Zshort_name :L2_LR_SSHproduct_file_id :Expertcrid :PIC0product_version :01pge_name :PGE_L2_LR_SSHpge_version :5.0.2time_coverage_start :2024-02-01T11:31:57.844839time_coverage_end :2024-02-01T12:23:25.880560geospatial_lon_min :270.91792399999997geospatial_lon_max :78.362457geospatial_lat_min :-78.271942geospatial_lat_max :78.27206799999999left_first_longitude :270.91792399999997left_first_latitude :78.27200599999999left_last_longitude :78.343086left_last_latitude :-77.05370099999999right_first_longitude :270.93575right_first_latitude :77.053837right_last_longitude :78.36245699999999right_last_latitude :-78.27186999999999wavelength :0.008385803020979021transmit_antenna :minus_yxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_010_210_20240201T113154_20240201T122329_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP010_209_20240201_104031_20240201_113158.nc, SWOT_IPN_2PfP010_210_20240201_113158_20240201_122325.nc, SWOT_IPN_2PfP010_211_20240201_122325_20240201_131452.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP010_209_20240201_104027_20240201_113202_PIC0_01.nc, SWOT_IPRAD_2PaP010_210_20240201_113154_20240201_122329_PIC0_01.nc, SWOT_IPRAD_2PaP010_211_20240201_122321_20240201_131455_PIC0_01.ncxref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20240131T233132_20240201T233223_PIC0_01.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20240202_103657_20240131_225923_20240202_005923.ncxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_PMA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_PMA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_WEA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_WEA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wind_files :SMM_VWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_VWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_UWA_AXVCNE20240202_030828_20240201_180000_20240201_180000, SMM_VWA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20240201_174042_20240201_060000_20240201_060000, SMM_PSA_AXVCNE20240201_174042_20240201_120000_20240201_120000, SMM_PSA_AXVCNE20240202_054023_20240201_180000_20240201_180000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_T2M_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_T2M_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CWV_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CWV_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CLW_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CLW_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_model_significant_wave_height_files :SMM_SWH_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_SWH_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_SWH_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_gim_files :JPLQ0320.24Ixref_pole_location_file :SMM_PO1_AXXCNE20240203_020000_19900101_000000_20240801_000000xref_dac_files :SMM_MOG_AXPCNE20240201_203002_20240201_060000_20240201_060000, SMM_MOG_AXPCNE20240201_203002_20240201_120000_20240201_120000, SMM_MOG_AXPCNE20240202_074502_20240201_180000_20240201_180000xref_precipitation_files :SMM_LSR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_CRR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grbxref_sea_ice_mask_files :SMM_ICS_AXFCNE20240202_042003_20240201_000000_20240201_235959.nc, SMM_ICN_AXFCNE20240202_041506_20240201_000000_20240201_235959.ncxref_wave_model_files :SMM_WMA_AXPCNE20240202_072016_20240201_030000_20240202_000000.grbxref_geco_database_version :v102ellipsoid_semi_major_axis :6378137.0ellipsoid_flattening :0.0033528106647474805good_ocean_data_percent :76.4772191457865ssha_variance :0.4263933333980923references :V1.2.1equator_longitude :-5.36", + "text": "1. SWOT Level 2 KaRIn Low Rate Sea Surface Height Data Product\n\nSearch and Download Data!\nIt’s time to find our data! Below we are searching using earthaccess Python library.\n\n#retrieves granule from the day we want\nkarin_results = earthaccess.search_data(short_name = 'SWOT_L2_LR_SSH_2.0', \n temporal = (\"2024-02-01 12:00:00\", \"2024-02-01 19:43:00\"), \n granule_name = '*Expert*') # filter by files with \"Expert\" in file name. This collection has subcollections of 'Basic', 'Windwave', 'Unsmoothed' and 'Expert' granules.\n\nGranules found: 10\n\n\n\nearthaccess.download(karin_results, \"./data_downloads/SWOT_files\", provider='POCLOUD')\n\n Getting 10 granules, approx download size: 0.32 GB\nFile SWOT_L2_LR_SSH_Expert_010_210_20240201T113157_20240201T122325_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_211_20240201T122324_20240201T131449_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_212_20240201T131459_20240201T140619_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_213_20240201T140618_20240201T145746_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_214_20240201T145745_20240201T154830_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_215_20240201T154954_20240201T164039_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_216_20240201T164038_20240201T173206_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_218_20240201T182332_20240201T191500_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_217_20240201T173205_20240201T182333_PIC0_01.nc already downloaded\nFile SWOT_L2_LR_SSH_Expert_010_219_20240201T191459_20240201T200627_PIC0_01.nc already downloaded\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_LR_SSH_Expert_010_210_20240201T113157_20240201T122325_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_211_20240201T122324_20240201T131449_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_212_20240201T131459_20240201T140619_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_213_20240201T140618_20240201T145746_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_214_20240201T145745_20240201T154830_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_215_20240201T154954_20240201T164039_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_216_20240201T164038_20240201T173206_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_217_20240201T173205_20240201T182333_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_218_20240201T182332_20240201T191500_PIC0_01.nc',\n 'SWOT_L2_LR_SSH_Expert_010_219_20240201T191459_20240201T200627_PIC0_01.nc']\n\n\n\n#load downloaded data into dataset to be used for plotting\nds = xr.open_mfdataset(\"./data_downloads/SWOT_files/SWOT_L2_LR_SSH_Expert*.nc\", combine='nested', concat_dim=\"num_lines\", decode_times=False)\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (num_lines: 98660, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n latitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n longitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n time (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n time_tai (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n ssh_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_qual (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssha_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ... ...\n swh_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n swh_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n title: Level 2 Low Rate Sea Surfa...\n institution: CNES\n source: Ka-band radar interferometer\n history: 2024-02-03T22:27:17Z : Cre...\n platform: SWOT\n ... ...\n ellipsoid_semi_major_axis: 6378137.0\n ellipsoid_flattening: 0.0033528106647474805\n good_ocean_data_percent: 76.4772191457865\n ssha_variance: 0.4263933333980923\n references: V1.2.1\n equator_longitude: -5.36xarray.DatasetDimensions:num_lines: 98660num_pixels: 69num_sides: 2Coordinates: (4)latitude(num_lines, num_pixels)float64dask.array<chunksize=(9866, 69), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_min :-80000000valid_max :80000000comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\ntime\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4212113375\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n60000\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4279222239\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809460191\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_2_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3876569055\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.58 MB\n157.86 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nobject\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nquality_flag :\n\nswh_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 32 128 256 512 1024 2048 4096 8192 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809361848\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n25000\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862815\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427359\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862808\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427352\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n289\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from wave model\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ndegree\n\nvalid_min :\n\n0\n\nvalid_max :\n\n36000\n\ncomment :\n\nMean sea surface wave direction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nt02 mean wave period\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ns\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nu component of model wind\n\nstandard_name :\n\neastward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nv component of model wind\n\nstandard_name :\n\nnorthward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from radiometer\n\nstandard_name :\n\nwind_speed\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm/s\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-21000\n\nvalid_max :\n\n21000\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n35999\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000000000\n\ncomment :\n\nAltitude of the KMSF origin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_min :\n\n-3500\n\nvalid_max :\n\n3500\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n394.64 kB\n39.46 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[ 0 4 5 6 7 8 64]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n64\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n394.64 kB\n39.46 kB\n\n\nShape\n(98660,)\n(9866,)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nx_factor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n15000\n\nvalid_max :\n\n28000\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater vapor content from radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nliquid water content from radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n789.28 kB\n78.93 kB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ngeoid\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nMean dynamic topography above the geoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n10000\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n10000\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npole_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndac\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n12000\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n-15000\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-5000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from crossover calibration\n\nunits :\n\nm\n\nquality_flag :\n\nheight_cor_xover_qual\n\nvalid_min :\n\n-100000\n\nvalid_max :\n\n100000\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n54.46 MB\n5.45 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nmm/hr\n\nvalid_min :\n\n0\n\nvalid_max :\n\n200\n\ncomment :\n\nRain rate from weather model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nice_conc\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nconcentration of sea ice\n\nstandard_name :\n\nsea_ice_area_fraction\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nunits :\n\n%\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nConcentration of sea ice from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n20000\n\ncomment :\n\nVolumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n27.23 MB\n2.72 MB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nCount\n30 Tasks\n10 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\nIndexes: (0)Attributes: (62)Conventions :CF-1.7title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Waveinstitution :CNESsource :Ka-band radar interferometerhistory :2024-02-03T22:27:17Z : Creationplatform :SWOTreference_document :D-56407_SWOT_Product_Description_L2_LR_SSHcontact :podaac@jpl.nasa.govcycle_number :10pass_number :210equator_time :2024-02-01T11:57:39.935000Zshort_name :L2_LR_SSHproduct_file_id :Expertcrid :PIC0product_version :01pge_name :PGE_L2_LR_SSHpge_version :5.0.2time_coverage_start :2024-02-01T11:31:57.844839time_coverage_end :2024-02-01T12:23:25.880560geospatial_lon_min :270.91792399999997geospatial_lon_max :78.362457geospatial_lat_min :-78.271942geospatial_lat_max :78.27206799999999left_first_longitude :270.91792399999997left_first_latitude :78.27200599999999left_last_longitude :78.343086left_last_latitude :-77.05370099999999right_first_longitude :270.93575right_first_latitude :77.053837right_last_longitude :78.36245699999999right_last_latitude :-78.27186999999999wavelength :0.008385803020979021transmit_antenna :minus_yxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_010_210_20240201T113154_20240201T122329_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP010_209_20240201_104031_20240201_113158.nc, SWOT_IPN_2PfP010_210_20240201_113158_20240201_122325.nc, SWOT_IPN_2PfP010_211_20240201_122325_20240201_131452.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP010_209_20240201_104027_20240201_113202_PIC0_01.nc, SWOT_IPRAD_2PaP010_210_20240201_113154_20240201_122329_PIC0_01.nc, SWOT_IPRAD_2PaP010_211_20240201_122321_20240201_131455_PIC0_01.ncxref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20240131T233132_20240201T233223_PIC0_01.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20240202_103657_20240131_225923_20240202_005923.ncxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_PMA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_PMA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_WEA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_WEA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wind_files :SMM_VWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_VWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_UWA_AXVCNE20240202_030828_20240201_180000_20240201_180000, SMM_VWA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20240201_174042_20240201_060000_20240201_060000, SMM_PSA_AXVCNE20240201_174042_20240201_120000_20240201_120000, SMM_PSA_AXVCNE20240202_054023_20240201_180000_20240201_180000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_T2M_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_T2M_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CWV_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CWV_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CLW_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CLW_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_model_significant_wave_height_files :SMM_SWH_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_SWH_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_SWH_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_gim_files :JPLQ0320.24Ixref_pole_location_file :SMM_PO1_AXXCNE20240203_020000_19900101_000000_20240801_000000xref_dac_files :SMM_MOG_AXPCNE20240201_203002_20240201_060000_20240201_060000, SMM_MOG_AXPCNE20240201_203002_20240201_120000_20240201_120000, SMM_MOG_AXPCNE20240202_074502_20240201_180000_20240201_180000xref_precipitation_files :SMM_LSR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_CRR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grbxref_sea_ice_mask_files :SMM_ICS_AXFCNE20240202_042003_20240201_000000_20240201_235959.nc, SMM_ICN_AXFCNE20240202_041506_20240201_000000_20240201_235959.ncxref_wave_model_files :SMM_WMA_AXPCNE20240202_072016_20240201_030000_20240202_000000.grbxref_geco_database_version :v102ellipsoid_semi_major_axis :6378137.0ellipsoid_flattening :0.0033528106647474805good_ocean_data_percent :76.4772191457865ssha_variance :0.4263933333980923references :V1.2.1equator_longitude :-5.36", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2532,7 +2532,7 @@ "href": "notebooks/datasets/Localmachine_SWOT_Oceanography.html#swot-level-2-nadir-altimeter-interim-geophysical-data-record-with-waveforms---ssha-version-1.0", "title": "Download and Access SWOT Oceanography Cloud-hosted Data", "section": "2. SWOT Level 2 Nadir Altimeter Interim Geophysical Data Record with Waveforms - SSHA Version 1.0", - "text": "2. SWOT Level 2 Nadir Altimeter Interim Geophysical Data Record with Waveforms - SSHA Version 1.0\n\nSearch and Download Data!\nBelow we are searching using earthaccess Python library.\n\n#retrieves granule from the day we want\nnadir_results = earthaccess.search_data(short_name = 'SWOT_L2_NALT_IGDR_SSHA_2.0', temporal = (\"2024-01-30 12:00:00\", \"2024-01-30 19:43:00\"))\n\nGranules found: 10\n\n\n\nearthaccess.download(nadir_results, \"./data_downloads/SWOT_files\")\n\n Getting 10 granules, approx download size: 0.0 GB\nError while downloading the file SWOT_IPR_2PfP010_161_20240130_173104_20240130_182230.nc\nTraceback (most recent call last):\n File \"C:\\Users\\nickles\\Anaconda3\\envs\\main\\lib\\site-packages\\earthaccess\\store.py\", line 589, in _download_file\n r.raise_for_status()\n File \"C:\\Users\\nickles\\Anaconda3\\envs\\main\\lib\\site-packages\\requests\\models.py\", line 1021, in raise_for_status\n raise HTTPError(http_error_msg, response=self)\nrequests.exceptions.HTTPError: 502 Server Error: Bad Gateway for url: https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_161_20240130_173104_20240130_182230.nc\n\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_IPR_2PfP010_154_20240130_113056_20240130_122223.nc',\n 'SWOT_IPR_2PfP010_155_20240130_122223_20240130_131350.nc',\n 'SWOT_IPR_2PfP010_156_20240130_131350_20240130_140516.nc',\n 'SWOT_IPR_2PfP010_157_20240130_140516_20240130_145643.nc',\n 'SWOT_IPR_2PfP010_158_20240130_145643_20240130_154810.nc',\n 'SWOT_IPR_2PfP010_159_20240130_154810_20240130_163937.nc',\n 'SWOT_IPR_2PfP010_160_20240130_163937_20240130_173104.nc',\n Exception(),\n 'SWOT_IPR_2PfP010_162_20240130_182230_20240130_191357.nc',\n 'SWOT_IPR_2PfP010_163_20240130_191357_20240130_200524.nc']\n\n\n\n#load downloaded data into dataset to be used for plotting\nds_nadir = xr.open_mfdataset(\"./data_downloads/SWOT_files/SWOT_IPR_*.nc\", combine='nested', concat_dim=\"time\", decode_times=False, engine='h5netcdf', group='data_01')\nds_nadir\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 25125)\nCoordinates:\n * time (time) float64 7.599e+08 ... 7.6e+08\n latitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n longitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\nData variables: (12/31)\n time_tai (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n surface_classification_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_1_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_2_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n alt_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n ... ...\n pole_tide (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n internal_tide_hret (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt_mle3 (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_water_vapor (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_cloud_liquid_water (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>xarray.DatasetDimensions:time: 25125Coordinates: (3)time(time)float647.599e+08 7.599e+08 ... 7.6e+08long_name :time in UTCstandard_name :timecalendar :gregorianunits :seconds since 2000-01-01 00:00:00.0comment :Time of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute [leap_second] is set to the UTC time at which the leap second occurstai_utc_difference :37.0leap_second :0000-00-00 00:00:00array([7.599295e+08, 7.599295e+08, 7.599295e+08, ..., 7.599603e+08,\n 7.599603e+08, 7.599603e+08])latitude(time)float64dask.array<chunksize=(2806,), meta=np.ndarray>long_name :latitudestandard_name :latitudeunits :degrees_northcomment :Positive latitude is North latitude, negative latitude is South latitude. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\ncomment :\n\nEast longitude relative to Greenwich meridian. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (31)\n\n\n\n\n\n\n\ntime_tai\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nsurface_classification_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\ncomment :\n\nComputed from a mask built with MODIS and GlobCover data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_1_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from first radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_2_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from second radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nalt_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all altimeter flags except altimeter echo type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all radiometer flags except radiometer surface type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ngeo_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeophysical quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCheck on validity of all geophysical fields : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmeteo_map_availability_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nECMWF meteorological map availability\n\nflag_meanings :\n\n2_maps_nominal 2_maps_degraded 1_map_closest_used no_valid_map\n\nflag_values :\n\n[0 1 2 3]\n\ncomment :\n\nPossible values are: 0 meaning ’2 maps, nominal’ (six hours apart), 1 meaning ’2 maps, degraded’ (more than six hours apart), 2 meaning ’1 map, closest map used’, 3 meaning ’no valid map’\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor_interp_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction interpolation quality flag\n\nflag_meanings :\n\ngood degraded bad\n\nflag_values :\n\n[0 1 2]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nflag_meanings :\n\nno_rain rain high_rain_probability_from_altimeter high_probability_of_no_rain_from_altimeter ambiguous_situation_possibility_of_ice evaluation_not_possible\n\nflag_values :\n\n[0 1 2 3 4 5]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_1_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from first radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_2_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from second radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nice flag\n\nflag_meanings :\n\nno_ice ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_1_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from first radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_2_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from second radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\naltitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1 Hz altitude of satellite\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\ncomment :\n\nAltitude of satellite above the reference ellipsoid. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor_zero_altitude\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmodel dry tropospheric correction at zero altitude\n\nstandard_name :\n\naltimeter_range_correction_due_to_dry_troposphere\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at Mean Sea Level Pressure at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. A dry tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for dry tropospheric range delays of the radar pulse. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction\n\nstandard_name :\n\naltimeter_range_correction_due_to_wet_troposphere\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nm\n\ncomment :\n\nA wet tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for wet tropospheric range delays of the radar pulse\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS solution) above reference ellipsoid\n\nsource :\n\nMSS_CNES_CLS-2015\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography above geoid\n\nsource :\n\nMDT_CNES_CLS-2018\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth/land elevation\n\nsource :\n\nACE2\n\ninstitution :\n\nEAPRS Laboratory\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninverted barometer height correction\n\nstandard_name :\n\nsea_surface_height_correction_due_to_air_pressure_at_low_frequency\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ndac\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\ninstitution :\n\nLEGOS/CLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSum of the high frequency fluctuations correction and of the low frequency inverted barometer correction (inv_bar_cor). See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES solution)\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_geocentric_ocean_tide\n\nsource :\n\nFES2014b\n\ninstitution :\n\nLEGOS/NOVELTIS/CNES/CLS\n\nunits :\n\nm\n\ncomment :\n\nIncludes the equilibrium long-period ocean tide height and only the short-period part of the corresponding loading tide. The permanent tide (zero frequency) is not included in this parameter because it is included in the geoid and mean sea surface (geoid, mean_sea_surface_cnescls). To get the total geocentric tide height (FES solution), do: ocean_tide_fes + ocean_tide_non_eq. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid earth tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_earth_tide\n\nsource :\n\nCartwright and Edden [1973] Corrected tables of tidal harmonics - J. Geophys. J. R. Astr. Soc., 33, 253-264.\n\nunits :\n\nm\n\ncomment :\n\nCalculated using Cartwright and Tayler tables and consisting of the second and third degree constituents. The permanent tide (zero frequency) is not included. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_pole_tide\n\nsource :\n\nDesai, S., Wahr, J. & Beckley, B. J Geod [2015] 89: 1233\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninternal tide height\n\nsource :\n\nE. D. Zaron. Baroclinic tidal sea level from exact-repeat mission altimetry. Journal of Physical Oceanography, 49(1):193-210, 2019.\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nwind_speed_alt\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.06 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nwind_speed_alt_mle3\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed (MLE3 retracking)\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.109 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean_mle3) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer water vapor content\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer liquid water content\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(Float64Index([759929456.5671339, 759929457.6690049, 759929458.770874,\n 759929459.872746, 759929460.9746141, 759929462.0764852,\n 759929463.1783538, 759929464.2802248, 759929465.3820939,\n 759929466.4839649,\n ...\n 759960314.5902781, 759960315.6921468, 759960316.7940178,\n 759960317.8958869, 759960318.9977579, 759960320.099627,\n 759960321.201498, 759960322.3033671, 759960323.4052382,\n 759960324.5071082],\n dtype='float64', name='time', length=25125))Attributes: (0)\n\n\n\n\n\nPlot\n\nplt.figure(figsize=(15, 5))\nax = plt.axes(projection=ccrs.PlateCarree())\nax.set_global()\nax.coastlines()\nplt.scatter(x=ds_nadir.longitude, y=ds_nadir.latitude, c=ds_nadir.depth_or_elevation, marker='.')\nplt.colorbar().set_label('Depth or Elevation (m)')", + "text": "2. SWOT Level 2 Nadir Altimeter Interim Geophysical Data Record with Waveforms - SSHA Version 1.0\n\nSearch and Download Data!\nBelow we are searching using earthaccess Python library.\n\n#retrieves granule from the day we want\nnadir_results = earthaccess.search_data(short_name = 'SWOT_L2_NALT_IGDR_SSHA_2.0', temporal = (\"2024-01-30 12:00:00\", \"2024-01-30 19:43:00\"))\n\nGranules found: 10\n\n\n\nearthaccess.download(nadir_results, \"./data_downloads/SWOT_files\")\n\n Getting 10 granules, approx download size: 0.0 GB\nError while downloading the file SWOT_IPR_2PfP010_161_20240130_173104_20240130_182230.nc\nTraceback (most recent call last):\n File \"C:\\Users\\nickles\\Anaconda3\\envs\\main\\lib\\site-packages\\earthaccess\\store.py\", line 589, in _download_file\n r.raise_for_status()\n File \"C:\\Users\\nickles\\Anaconda3\\envs\\main\\lib\\site-packages\\requests\\models.py\", line 1021, in raise_for_status\n raise HTTPError(http_error_msg, response=self)\nrequests.exceptions.HTTPError: 502 Server Error: Bad Gateway for url: https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_161_20240130_173104_20240130_182230.nc\n\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_IPR_2PfP010_154_20240130_113056_20240130_122223.nc',\n 'SWOT_IPR_2PfP010_155_20240130_122223_20240130_131350.nc',\n 'SWOT_IPR_2PfP010_156_20240130_131350_20240130_140516.nc',\n 'SWOT_IPR_2PfP010_157_20240130_140516_20240130_145643.nc',\n 'SWOT_IPR_2PfP010_158_20240130_145643_20240130_154810.nc',\n 'SWOT_IPR_2PfP010_159_20240130_154810_20240130_163937.nc',\n 'SWOT_IPR_2PfP010_160_20240130_163937_20240130_173104.nc',\n Exception(),\n 'SWOT_IPR_2PfP010_162_20240130_182230_20240130_191357.nc',\n 'SWOT_IPR_2PfP010_163_20240130_191357_20240130_200524.nc']\n\n\n\n#load downloaded data into dataset to be used for plotting\nds_nadir = xr.open_mfdataset(\"./data_downloads/SWOT_files/SWOT_IPR_*.nc\", combine='nested', concat_dim=\"time\", decode_times=False, engine='h5netcdf', group='data_01')\nds_nadir\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 25125)\nCoordinates:\n * time (time) float64 7.599e+08 ... 7.6e+08\n latitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n longitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\nData variables: (12/31)\n time_tai (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n surface_classification_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_1_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_2_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n alt_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n ... ...\n pole_tide (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n internal_tide_hret (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt_mle3 (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_water_vapor (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_cloud_liquid_water (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>xarray.DatasetDimensions:time: 25125Coordinates: (3)time(time)float647.599e+08 7.599e+08 ... 7.6e+08long_name :time in UTCstandard_name :timecalendar :gregorianunits :seconds since 2000-01-01 00:00:00.0comment :Time of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute [leap_second] is set to the UTC time at which the leap second occurstai_utc_difference :37.0leap_second :0000-00-00 00:00:00array([7.599295e+08, 7.599295e+08, 7.599295e+08, ..., 7.599603e+08,\n 7.599603e+08, 7.599603e+08])latitude(time)float64dask.array<chunksize=(2806,), meta=np.ndarray>long_name :latitudestandard_name :latitudeunits :degrees_northcomment :Positive latitude is North latitude, negative latitude is South latitude. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\ncomment :\n\nEast longitude relative to Greenwich meridian. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (31)\n\n\n\n\n\n\n\ntime_tai\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nsurface_classification_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\ncomment :\n\nComputed from a mask built with MODIS and GlobCover data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_1_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from first radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_2_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from second radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nalt_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all altimeter flags except altimeter echo type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all radiometer flags except radiometer surface type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ngeo_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeophysical quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCheck on validity of all geophysical fields : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmeteo_map_availability_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nECMWF meteorological map availability\n\nflag_meanings :\n\n2_maps_nominal 2_maps_degraded 1_map_closest_used no_valid_map\n\nflag_values :\n\n[0 1 2 3]\n\ncomment :\n\nPossible values are: 0 meaning ’2 maps, nominal’ (six hours apart), 1 meaning ’2 maps, degraded’ (more than six hours apart), 2 meaning ’1 map, closest map used’, 3 meaning ’no valid map’\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor_interp_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction interpolation quality flag\n\nflag_meanings :\n\ngood degraded bad\n\nflag_values :\n\n[0 1 2]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nflag_meanings :\n\nno_rain rain high_rain_probability_from_altimeter high_probability_of_no_rain_from_altimeter ambiguous_situation_possibility_of_ice evaluation_not_possible\n\nflag_values :\n\n[0 1 2 3 4 5]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_1_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from first radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_2_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from second radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nice flag\n\nflag_meanings :\n\nno_ice ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_1_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from first radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_side_2_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from second radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\naltitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1 Hz altitude of satellite\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\ncomment :\n\nAltitude of satellite above the reference ellipsoid. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor_zero_altitude\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmodel dry tropospheric correction at zero altitude\n\nstandard_name :\n\naltimeter_range_correction_due_to_dry_troposphere\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at Mean Sea Level Pressure at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. A dry tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for dry tropospheric range delays of the radar pulse. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction\n\nstandard_name :\n\naltimeter_range_correction_due_to_wet_troposphere\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nm\n\ncomment :\n\nA wet tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for wet tropospheric range delays of the radar pulse\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS solution) above reference ellipsoid\n\nsource :\n\nMSS_CNES_CLS-2015\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography above geoid\n\nsource :\n\nMDT_CNES_CLS-2018\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth/land elevation\n\nsource :\n\nACE2\n\ninstitution :\n\nEAPRS Laboratory\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninverted barometer height correction\n\nstandard_name :\n\nsea_surface_height_correction_due_to_air_pressure_at_low_frequency\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ndac\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\ninstitution :\n\nLEGOS/CLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSum of the high frequency fluctuations correction and of the low frequency inverted barometer correction (inv_bar_cor). See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES solution)\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_geocentric_ocean_tide\n\nsource :\n\nFES2014b\n\ninstitution :\n\nLEGOS/NOVELTIS/CNES/CLS\n\nunits :\n\nm\n\ncomment :\n\nIncludes the equilibrium long-period ocean tide height and only the short-period part of the corresponding loading tide. The permanent tide (zero frequency) is not included in this parameter because it is included in the geoid and mean sea surface (geoid, mean_sea_surface_cnescls). To get the total geocentric tide height (FES solution), do: ocean_tide_fes + ocean_tide_non_eq. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n201.00 kB\n22.45 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid earth tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_earth_tide\n\nsource :\n\nCartwright and Edden [1973] Corrected tables of tidal harmonics - J. Geophys. J. R. Astr. Soc., 33, 253-264.\n\nunits :\n\nm\n\ncomment :\n\nCalculated using Cartwright and Tayler tables and consisting of the second and third degree constituents. The permanent tide (zero frequency) is not included. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_pole_tide\n\nsource :\n\nDesai, S., Wahr, J. & Beckley, B. J Geod [2015] 89: 1233\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninternal tide height\n\nsource :\n\nE. D. Zaron. Baroclinic tidal sea level from exact-repeat mission altimetry. Journal of Physical Oceanography, 49(1):193-210, 2019.\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nwind_speed_alt\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.06 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nwind_speed_alt_mle3\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed (MLE3 retracking)\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.109 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean_mle3) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer water vapor content\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer liquid water content\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n100.50 kB\n11.22 kB\n\n\nShape\n(25125,)\n(2806,)\n\n\nCount\n27 Tasks\n9 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 25125 1\n\n\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(Float64Index([759929456.5671339, 759929457.6690049, 759929458.770874,\n 759929459.872746, 759929460.9746141, 759929462.0764852,\n 759929463.1783538, 759929464.2802248, 759929465.3820939,\n 759929466.4839649,\n ...\n 759960314.5902781, 759960315.6921468, 759960316.7940178,\n 759960317.8958869, 759960318.9977579, 759960320.099627,\n 759960321.201498, 759960322.3033671, 759960323.4052382,\n 759960324.5071082],\n dtype='float64', name='time', length=25125))Attributes: (0)\n\n\n\n\nPlot\n\nplt.figure(figsize=(15, 5))\nax = plt.axes(projection=ccrs.PlateCarree())\nax.set_global()\nax.coastlines()\nplt.scatter(x=ds_nadir.longitude, y=ds_nadir.latitude, c=ds_nadir.depth_or_elevation, marker='.')\nplt.colorbar().set_label('Depth or Elevation (m)')", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2731,7 +2731,7 @@ "href": "notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html#swot-level-2-karin-low-rate-sea-surface-height-data-product", "title": "Access SWOT Oceanography Data in the Cloud", "section": "1. SWOT Level 2 KaRIn Low Rate Sea Surface Height Data Product", - "text": "1. SWOT Level 2 KaRIn Low Rate Sea Surface Height Data Product\n\nAccess Files without any Downloads to your running instance\nHere, we use the earthaccess Python library to search for and then load the data directly into xarray without downloading any files. This dataset is currently restricted to a select few people, and can only be accessed using the version of earthaccess reinstalled above. If zero granules are returned, make sure the correct version ‘0.5.4’ is installed.\n\n#retrieves granule from the day we want\nkarin_results = earthaccess.search_data(short_name = 'SWOT_L2_LR_SSH_2.0', \n temporal = (\"2024-02-01 12:00:00\", \"2024-02-01 19:43:00\"), \n granule_name = '*Expert*') # filter by files with \"Expert\" in file name. This collection has subcollections of 'Basic', 'Windwave', 'Unsmoothed' and 'Expert' granules.\n\nGranules found: 10\n\n\n\n\nOpen with xarray\nThe files we are looking at are about 11-13 MB each. So the 10 we’re looking to access are about ~100 MB total.\n\n#opens granules and load into xarray dataset\nds = xr.open_mfdataset(earthaccess.open(karin_results), combine='nested', concat_dim=\"num_lines\", decode_times=False, engine='h5netcdf')\nds\n\nOpening 10 granules, approx size: 0.32 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (num_lines: 98660, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n latitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n longitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n time (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n time_tai (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n ssh_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_qual (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssha_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ... ...\n swh_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n swh_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n title: Level 2 Low Rate Sea Surfa...\n institution: CNES\n source: Ka-band radar interferometer\n history: 2024-02-03T22:27:17Z : Cre...\n platform: SWOT\n ... ...\n ellipsoid_semi_major_axis: 6378137.0\n ellipsoid_flattening: 0.0033528106647474805\n good_ocean_data_percent: 76.4772191457865\n ssha_variance: 0.4263933333980923\n references: V1.2.1\n equator_longitude: -5.36xarray.DatasetDimensions:num_lines: 98660num_pixels: 69num_sides: 2Coordinates: (4)latitude(num_lines, num_pixels)float64dask.array<chunksize=(9866, 69), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_min :-80000000valid_max :80000000comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\ntime\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4212113375\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n60000\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4279222239\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809460191\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_2_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3876569055\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.51 MiB\n154.16 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nobject numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nquality_flag :\n\nswh_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 32 128 256 512 1024 2048 4096 8192 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809361848\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n25000\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862815\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427359\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862808\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427352\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n289\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from wave model\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ndegree\n\nvalid_min :\n\n0\n\nvalid_max :\n\n36000\n\ncomment :\n\nMean sea surface wave direction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nt02 mean wave period\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ns\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nu component of model wind\n\nstandard_name :\n\neastward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nv component of model wind\n\nstandard_name :\n\nnorthward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from radiometer\n\nstandard_name :\n\nwind_speed\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm/s\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-21000\n\nvalid_max :\n\n21000\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n35999\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000000000\n\ncomment :\n\nAltitude of the KMSF origin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_min :\n\n-3500\n\nvalid_max :\n\n3500\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n385.39 kiB\n38.54 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[ 0 4 5 6 7 8 64]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n64\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n385.39 kiB\n38.54 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nx_factor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n15000\n\nvalid_max :\n\n28000\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater vapor content from radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nliquid water content from radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ngeoid\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nMean dynamic topography above the geoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n10000\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n10000\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npole_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndac\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n12000\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n-15000\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-5000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from crossover calibration\n\nunits :\n\nm\n\nquality_flag :\n\nheight_cor_xover_qual\n\nvalid_min :\n\n-100000\n\nvalid_max :\n\n100000\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nmm/hr\n\nvalid_min :\n\n0\n\nvalid_max :\n\n200\n\ncomment :\n\nRain rate from weather model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nice_conc\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nconcentration of sea ice\n\nstandard_name :\n\nsea_ice_area_fraction\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nunits :\n\n%\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nConcentration of sea ice from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n20000\n\ncomment :\n\nVolumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\nIndexes: (0)Attributes: (62)Conventions :CF-1.7title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Waveinstitution :CNESsource :Ka-band radar interferometerhistory :2024-02-03T22:27:17Z : Creationplatform :SWOTreference_document :D-56407_SWOT_Product_Description_L2_LR_SSHcontact :podaac@jpl.nasa.govcycle_number :10pass_number :210equator_time :2024-02-01T11:57:39.935000Zshort_name :L2_LR_SSHproduct_file_id :Expertcrid :PIC0product_version :01pge_name :PGE_L2_LR_SSHpge_version :5.0.2time_coverage_start :2024-02-01T11:31:57.844839time_coverage_end :2024-02-01T12:23:25.880560geospatial_lon_min :270.91792399999997geospatial_lon_max :78.362457geospatial_lat_min :-78.271942geospatial_lat_max :78.27206799999999left_first_longitude :270.91792399999997left_first_latitude :78.27200599999999left_last_longitude :78.343086left_last_latitude :-77.05370099999999right_first_longitude :270.93575right_first_latitude :77.053837right_last_longitude :78.36245699999999right_last_latitude :-78.27186999999999wavelength :0.008385803020979021transmit_antenna :minus_yxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_010_210_20240201T113154_20240201T122329_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP010_209_20240201_104031_20240201_113158.nc, SWOT_IPN_2PfP010_210_20240201_113158_20240201_122325.nc, SWOT_IPN_2PfP010_211_20240201_122325_20240201_131452.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP010_209_20240201_104027_20240201_113202_PIC0_01.nc, SWOT_IPRAD_2PaP010_210_20240201_113154_20240201_122329_PIC0_01.nc, SWOT_IPRAD_2PaP010_211_20240201_122321_20240201_131455_PIC0_01.ncxref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20240131T233132_20240201T233223_PIC0_01.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20240202_103657_20240131_225923_20240202_005923.ncxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_PMA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_PMA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_WEA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_WEA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wind_files :SMM_VWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_VWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_UWA_AXVCNE20240202_030828_20240201_180000_20240201_180000, SMM_VWA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20240201_174042_20240201_060000_20240201_060000, SMM_PSA_AXVCNE20240201_174042_20240201_120000_20240201_120000, SMM_PSA_AXVCNE20240202_054023_20240201_180000_20240201_180000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_T2M_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_T2M_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CWV_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CWV_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CLW_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CLW_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_model_significant_wave_height_files :SMM_SWH_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_SWH_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_SWH_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_gim_files :JPLQ0320.24Ixref_pole_location_file :SMM_PO1_AXXCNE20240203_020000_19900101_000000_20240801_000000xref_dac_files :SMM_MOG_AXPCNE20240201_203002_20240201_060000_20240201_060000, SMM_MOG_AXPCNE20240201_203002_20240201_120000_20240201_120000, SMM_MOG_AXPCNE20240202_074502_20240201_180000_20240201_180000xref_precipitation_files :SMM_LSR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_CRR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grbxref_sea_ice_mask_files :SMM_ICS_AXFCNE20240202_042003_20240201_000000_20240201_235959.nc, SMM_ICN_AXFCNE20240202_041506_20240201_000000_20240201_235959.ncxref_wave_model_files :SMM_WMA_AXPCNE20240202_072016_20240201_030000_20240202_000000.grbxref_geco_database_version :v102ellipsoid_semi_major_axis :6378137.0ellipsoid_flattening :0.0033528106647474805good_ocean_data_percent :76.4772191457865ssha_variance :0.4263933333980923references :V1.2.1equator_longitude :-5.36", + "text": "1. SWOT Level 2 KaRIn Low Rate Sea Surface Height Data Product\n\nAccess Files without any Downloads to your running instance\nHere, we use the earthaccess Python library to search for and then load the data directly into xarray without downloading any files. This dataset is currently restricted to a select few people, and can only be accessed using the version of earthaccess reinstalled above. If zero granules are returned, make sure the correct version ‘0.5.4’ is installed.\n\n#retrieves granule from the day we want\nkarin_results = earthaccess.search_data(short_name = 'SWOT_L2_LR_SSH_2.0', \n temporal = (\"2024-02-01 12:00:00\", \"2024-02-01 19:43:00\"), \n granule_name = '*Expert*') # filter by files with \"Expert\" in file name. This collection has subcollections of 'Basic', 'Windwave', 'Unsmoothed' and 'Expert' granules.\n\nGranules found: 10\n\n\n\n\nOpen with xarray\nThe files we are looking at are about 11-13 MB each. So the 10 we’re looking to access are about ~100 MB total.\n\n#opens granules and load into xarray dataset\nds = xr.open_mfdataset(earthaccess.open(karin_results), combine='nested', concat_dim=\"num_lines\", decode_times=False, engine='h5netcdf')\nds\n\nOpening 10 granules, approx size: 0.32 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (num_lines: 98660, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n latitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n longitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n time (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n time_tai (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n ssh_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_qual (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssha_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ... ...\n swh_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n swh_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n title: Level 2 Low Rate Sea Surfa...\n institution: CNES\n source: Ka-band radar interferometer\n history: 2024-02-03T22:27:17Z : Cre...\n platform: SWOT\n ... ...\n ellipsoid_semi_major_axis: 6378137.0\n ellipsoid_flattening: 0.0033528106647474805\n good_ocean_data_percent: 76.4772191457865\n ssha_variance: 0.4263933333980923\n references: V1.2.1\n equator_longitude: -5.36xarray.DatasetDimensions:num_lines: 98660num_pixels: 69num_sides: 2Coordinates: (4)latitude(num_lines, num_pixels)float64dask.array<chunksize=(9866, 69), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_min :-80000000valid_max :80000000comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\ntime\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\ntai_utc_difference :\n\n37.0\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4212113375\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n60000\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4279222239\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809460191\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_2_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3876569055\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.51 MiB\n154.16 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nobject numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nquality_flag :\n\nswh_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 32 128 256 512 1024 2048 4096 8192 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809361848\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n25000\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862815\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427359\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862808\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427352\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n289\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from wave model\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ndegree\n\nvalid_min :\n\n0\n\nvalid_max :\n\n36000\n\ncomment :\n\nMean sea surface wave direction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nt02 mean wave period\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ns\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nu component of model wind\n\nstandard_name :\n\neastward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nv component of model wind\n\nstandard_name :\n\nnorthward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from radiometer\n\nstandard_name :\n\nwind_speed\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm/s\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-21000\n\nvalid_max :\n\n21000\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n35999\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000000000\n\ncomment :\n\nAltitude of the KMSF origin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_min :\n\n-3500\n\nvalid_max :\n\n3500\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n385.39 kiB\n38.54 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[ 0 4 5 6 7 8 64]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n64\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n385.39 kiB\n38.54 kiB\n\n\nShape\n(98660,)\n(9866,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 98660 1\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nx_factor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n15000\n\nvalid_max :\n\n28000\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater vapor content from radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nliquid water content from radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n770.78 kiB\n77.08 kiB\n\n\nShape\n(98660, 2)\n(9866, 2)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 2 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ngeoid\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nMean dynamic topography above the geoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n10000\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n10000\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\npole_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ndac\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n12000\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n-15000\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-5000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from crossover calibration\n\nunits :\n\nm\n\nquality_flag :\n\nheight_cor_xover_qual\n\nvalid_min :\n\n-100000\n\nvalid_max :\n\n100000\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.94 MiB\n5.19 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nmm/hr\n\nvalid_min :\n\n0\n\nvalid_max :\n\n200\n\ncomment :\n\nRain rate from weather model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nice_conc\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nconcentration of sea ice\n\nstandard_name :\n\nsea_ice_area_fraction\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nunits :\n\n%\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nConcentration of sea ice from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n20000\n\ncomment :\n\nVolumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.97 MiB\n2.60 MiB\n\n\nShape\n(98660, 69)\n(9866, 69)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 69 98660\n\n\n\n\n\n\nIndexes: (0)Attributes: (62)Conventions :CF-1.7title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Waveinstitution :CNESsource :Ka-band radar interferometerhistory :2024-02-03T22:27:17Z : Creationplatform :SWOTreference_document :D-56407_SWOT_Product_Description_L2_LR_SSHcontact :podaac@jpl.nasa.govcycle_number :10pass_number :210equator_time :2024-02-01T11:57:39.935000Zshort_name :L2_LR_SSHproduct_file_id :Expertcrid :PIC0product_version :01pge_name :PGE_L2_LR_SSHpge_version :5.0.2time_coverage_start :2024-02-01T11:31:57.844839time_coverage_end :2024-02-01T12:23:25.880560geospatial_lon_min :270.91792399999997geospatial_lon_max :78.362457geospatial_lat_min :-78.271942geospatial_lat_max :78.27206799999999left_first_longitude :270.91792399999997left_first_latitude :78.27200599999999left_last_longitude :78.343086left_last_latitude :-77.05370099999999right_first_longitude :270.93575right_first_latitude :77.053837right_last_longitude :78.36245699999999right_last_latitude :-78.27186999999999wavelength :0.008385803020979021transmit_antenna :minus_yxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_010_210_20240201T113154_20240201T122329_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP010_209_20240201_104031_20240201_113158.nc, SWOT_IPN_2PfP010_210_20240201_113158_20240201_122325.nc, SWOT_IPN_2PfP010_211_20240201_122325_20240201_131452.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP010_209_20240201_104027_20240201_113202_PIC0_01.nc, SWOT_IPRAD_2PaP010_210_20240201_113154_20240201_122329_PIC0_01.nc, SWOT_IPRAD_2PaP010_211_20240201_122321_20240201_131455_PIC0_01.ncxref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20240131T233132_20240201T233223_PIC0_01.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20240202_103657_20240131_225923_20240202_005923.ncxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_PMA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_PMA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_WEA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_WEA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_wind_files :SMM_VWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_164030_20240201_060000_20240201_060000, SMM_UWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_VWA_AXVCNE20240201_171613_20240201_120000_20240201_120000, SMM_UWA_AXVCNE20240202_030828_20240201_180000_20240201_180000, SMM_VWA_AXVCNE20240202_030828_20240201_180000_20240201_180000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20240201_174042_20240201_060000_20240201_060000, SMM_PSA_AXVCNE20240201_174042_20240201_120000_20240201_120000, SMM_PSA_AXVCNE20240202_054023_20240201_180000_20240201_180000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_T2M_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_T2M_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CWV_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CWV_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_CLW_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_CLW_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_model_significant_wave_height_files :SMM_SWH_AXPCNE20240201_174042_20240201_060000_20240201_060000.grb, SMM_SWH_AXPCNE20240201_174042_20240201_120000_20240201_120000.grb, SMM_SWH_AXPCNE20240202_054023_20240201_180000_20240201_180000.grbxref_gim_files :JPLQ0320.24Ixref_pole_location_file :SMM_PO1_AXXCNE20240203_020000_19900101_000000_20240801_000000xref_dac_files :SMM_MOG_AXPCNE20240201_203002_20240201_060000_20240201_060000, SMM_MOG_AXPCNE20240201_203002_20240201_120000_20240201_120000, SMM_MOG_AXPCNE20240202_074502_20240201_180000_20240201_180000xref_precipitation_files :SMM_LSR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_CRR_AXFCNE20240201_065551_20240201_060000_20240201_060000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_120000_20240201_120000.grb, SMM_LSR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grb, SMM_CRR_AXFCNE20240201_185554_20240201_180000_20240201_180000.grbxref_sea_ice_mask_files :SMM_ICS_AXFCNE20240202_042003_20240201_000000_20240201_235959.nc, SMM_ICN_AXFCNE20240202_041506_20240201_000000_20240201_235959.ncxref_wave_model_files :SMM_WMA_AXPCNE20240202_072016_20240201_030000_20240202_000000.grbxref_geco_database_version :v102ellipsoid_semi_major_axis :6378137.0ellipsoid_flattening :0.0033528106647474805good_ocean_data_percent :76.4772191457865ssha_variance :0.4263933333980923references :V1.2.1equator_longitude :-5.36", "crumbs": [ "Tutorials", "Dataset Specific", @@ -2746,7 +2746,7 @@ "href": "notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html#swot-level-2-nadir-altimeter-interim-geophysical-data-record-with-waveforms---ssha-version-1.0", "title": "Access SWOT Oceanography Data in the Cloud", "section": "2. SWOT Level 2 Nadir Altimeter Interim Geophysical Data Record with Waveforms - SSHA Version 1.0", - "text": "2. SWOT Level 2 Nadir Altimeter Interim Geophysical Data Record with Waveforms - SSHA Version 1.0\n\nAccess Files without any Downloads to your running instance\nHere, we use the earthaccess Python library to search for and then load the data directly into xarray without downloading any files.\n\n#retrieves granule from the day we want\nnadir_results = earthaccess.search_data(short_name = 'SWOT_L2_NALT_IGDR_SSHA_2.0', temporal = (\"2024-01-30 12:00:00\", \"2024-01-30 19:43:00\"))\n\nGranules found: 10\n\n\n\nfor g in nadir_results:\n print(earthaccess.results.DataGranule.data_links(g, access='direct'))\n\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_154_20240130_113056_20240130_122223.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_155_20240130_122223_20240130_131350.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_156_20240130_131350_20240130_140516.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_157_20240130_140516_20240130_145643.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_158_20240130_145643_20240130_154810.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_159_20240130_154810_20240130_163937.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_160_20240130_163937_20240130_173104.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_161_20240130_173104_20240130_182230.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_162_20240130_182230_20240130_191357.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_163_20240130_191357_20240130_200524.nc']\n\n\n\n#opens granules and load into xarray dataset, for xarray to work, make sure 'group' is specified.\nds_nadir = xr.open_mfdataset(earthaccess.open(nadir_results), combine='nested', concat_dim=\"time\", decode_times=False, engine='h5netcdf', group='data_01')\nds_nadir\n\nOpening 10 granules, approx size: 0.0 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 27927)\nCoordinates:\n * time (time) float64 7.599e+08 ... 7.6e+08\n latitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n longitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\nData variables: (12/31)\n time_tai (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n surface_classification_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_1_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_2_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n alt_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n ... ...\n pole_tide (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n internal_tide_hret (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt_mle3 (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_water_vapor (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_cloud_liquid_water (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>xarray.DatasetDimensions:time: 27927Coordinates: (3)time(time)float647.599e+08 7.599e+08 ... 7.6e+08long_name :time in UTCstandard_name :timecalendar :gregorianunits :seconds since 2000-01-01 00:00:00.0comment :Time of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute [leap_second] is set to the UTC time at which the leap second occurstai_utc_difference :37.0leap_second :0000-00-00 00:00:00array([7.599295e+08, 7.599295e+08, 7.599295e+08, ..., 7.599603e+08,\n 7.599603e+08, 7.599603e+08])latitude(time)float64dask.array<chunksize=(2806,), meta=np.ndarray>long_name :latitudestandard_name :latitudeunits :degrees_northcomment :Positive latitude is North latitude, negative latitude is South latitude. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\ncomment :\n\nEast longitude relative to Greenwich meridian. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (31)\n\n\n\n\n\n\n\ntime_tai\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nsurface_classification_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\ncomment :\n\nComputed from a mask built with MODIS and GlobCover data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_1_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from first radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_2_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from second radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nalt_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all altimeter flags except altimeter echo type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all radiometer flags except radiometer surface type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ngeo_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeophysical quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCheck on validity of all geophysical fields : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmeteo_map_availability_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nECMWF meteorological map availability\n\nflag_meanings :\n\n2_maps_nominal 2_maps_degraded 1_map_closest_used no_valid_map\n\nflag_values :\n\n[0 1 2 3]\n\ncomment :\n\nPossible values are: 0 meaning ’2 maps, nominal’ (six hours apart), 1 meaning ’2 maps, degraded’ (more than six hours apart), 2 meaning ’1 map, closest map used’, 3 meaning ’no valid map’\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor_interp_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction interpolation quality flag\n\nflag_meanings :\n\ngood degraded bad\n\nflag_values :\n\n[0 1 2]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nflag_meanings :\n\nno_rain rain high_rain_probability_from_altimeter high_probability_of_no_rain_from_altimeter ambiguous_situation_possibility_of_ice evaluation_not_possible\n\nflag_values :\n\n[0 1 2 3 4 5]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_1_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from first radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_2_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from second radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nice flag\n\nflag_meanings :\n\nno_ice ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_1_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from first radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_2_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from second radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\naltitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1 Hz altitude of satellite\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\ncomment :\n\nAltitude of satellite above the reference ellipsoid. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor_zero_altitude\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmodel dry tropospheric correction at zero altitude\n\nstandard_name :\n\naltimeter_range_correction_due_to_dry_troposphere\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at Mean Sea Level Pressure at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. A dry tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for dry tropospheric range delays of the radar pulse. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction\n\nstandard_name :\n\naltimeter_range_correction_due_to_wet_troposphere\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nm\n\ncomment :\n\nA wet tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for wet tropospheric range delays of the radar pulse\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS solution) above reference ellipsoid\n\nsource :\n\nMSS_CNES_CLS-2015\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography above geoid\n\nsource :\n\nMDT_CNES_CLS-2018\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth/land elevation\n\nsource :\n\nACE2\n\ninstitution :\n\nEAPRS Laboratory\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninverted barometer height correction\n\nstandard_name :\n\nsea_surface_height_correction_due_to_air_pressure_at_low_frequency\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ndac\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\ninstitution :\n\nLEGOS/CLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSum of the high frequency fluctuations correction and of the low frequency inverted barometer correction (inv_bar_cor). See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES solution)\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_geocentric_ocean_tide\n\nsource :\n\nFES2014b\n\ninstitution :\n\nLEGOS/NOVELTIS/CNES/CLS\n\nunits :\n\nm\n\ncomment :\n\nIncludes the equilibrium long-period ocean tide height and only the short-period part of the corresponding loading tide. The permanent tide (zero frequency) is not included in this parameter because it is included in the geoid and mean sea surface (geoid, mean_sea_surface_cnescls). To get the total geocentric tide height (FES solution), do: ocean_tide_fes + ocean_tide_non_eq. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid earth tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_earth_tide\n\nsource :\n\nCartwright and Edden [1973] Corrected tables of tidal harmonics - J. Geophys. J. R. Astr. Soc., 33, 253-264.\n\nunits :\n\nm\n\ncomment :\n\nCalculated using Cartwright and Tayler tables and consisting of the second and third degree constituents. The permanent tide (zero frequency) is not included. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_pole_tide\n\nsource :\n\nDesai, S., Wahr, J. & Beckley, B. J Geod [2015] 89: 1233\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninternal tide height\n\nsource :\n\nE. D. Zaron. Baroclinic tidal sea level from exact-repeat mission altimetry. Journal of Physical Oceanography, 49(1):193-210, 2019.\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nwind_speed_alt\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.06 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nwind_speed_alt_mle3\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed (MLE3 retracking)\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.109 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean_mle3) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer water vapor content\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer liquid water content\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(Float64Index([759929456.5671339, 759929457.6690049, 759929458.770874,\n 759929459.872746, 759929460.9746141, 759929462.0764852,\n 759929463.1783538, 759929464.2802248, 759929465.3820939,\n 759929466.4839649,\n ...\n 759960314.5902781, 759960315.6921468, 759960316.7940178,\n 759960317.8958869, 759960318.9977579, 759960320.099627,\n 759960321.201498, 759960322.3033671, 759960323.4052382,\n 759960324.5071082],\n dtype='float64', name='time', length=27927))Attributes: (0)\n\n\n\n\n\nPlot\n\nplt.figure(figsize=(15, 5))\nax = plt.axes(projection=ccrs.PlateCarree())\nax.set_global()\nax.coastlines()\nplt.scatter(x=ds_nadir.longitude, y=ds_nadir.latitude, c=ds_nadir.depth_or_elevation, marker='.')\nplt.colorbar().set_label('Depth or Elevation (m)')", + "text": "2. SWOT Level 2 Nadir Altimeter Interim Geophysical Data Record with Waveforms - SSHA Version 1.0\n\nAccess Files without any Downloads to your running instance\nHere, we use the earthaccess Python library to search for and then load the data directly into xarray without downloading any files.\n\n#retrieves granule from the day we want\nnadir_results = earthaccess.search_data(short_name = 'SWOT_L2_NALT_IGDR_SSHA_2.0', temporal = (\"2024-01-30 12:00:00\", \"2024-01-30 19:43:00\"))\n\nGranules found: 10\n\n\n\nfor g in nadir_results:\n print(earthaccess.results.DataGranule.data_links(g, access='direct'))\n\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_154_20240130_113056_20240130_122223.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_155_20240130_122223_20240130_131350.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_156_20240130_131350_20240130_140516.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_157_20240130_140516_20240130_145643.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_158_20240130_145643_20240130_154810.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_159_20240130_154810_20240130_163937.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_160_20240130_163937_20240130_173104.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_161_20240130_173104_20240130_182230.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_162_20240130_182230_20240130_191357.nc']\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_NALT_IGDR_2.0/SWOT_IPR_2PfP010_163_20240130_191357_20240130_200524.nc']\n\n\n\n#opens granules and load into xarray dataset, for xarray to work, make sure 'group' is specified.\nds_nadir = xr.open_mfdataset(earthaccess.open(nadir_results), combine='nested', concat_dim=\"time\", decode_times=False, engine='h5netcdf', group='data_01')\nds_nadir\n\nOpening 10 granules, approx size: 0.0 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 27927)\nCoordinates:\n * time (time) float64 7.599e+08 ... 7.6e+08\n latitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n longitude (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\nData variables: (12/31)\n time_tai (time) float64 dask.array<chunksize=(2806,), meta=np.ndarray>\n surface_classification_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_1_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_side_2_surface_type_flag (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n alt_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_qual (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n ... ...\n pole_tide (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n internal_tide_hret (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n wind_speed_alt_mle3 (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_water_vapor (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>\n rad_cloud_liquid_water (time) float32 dask.array<chunksize=(2806,), meta=np.ndarray>xarray.DatasetDimensions:time: 27927Coordinates: (3)time(time)float647.599e+08 7.599e+08 ... 7.6e+08long_name :time in UTCstandard_name :timecalendar :gregorianunits :seconds since 2000-01-01 00:00:00.0comment :Time of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute [leap_second] is set to the UTC time at which the leap second occurstai_utc_difference :37.0leap_second :0000-00-00 00:00:00array([7.599295e+08, 7.599295e+08, 7.599295e+08, ..., 7.599603e+08,\n 7.599603e+08, 7.599603e+08])latitude(time)float64dask.array<chunksize=(2806,), meta=np.ndarray>long_name :latitudestandard_name :latitudeunits :degrees_northcomment :Positive latitude is North latitude, negative latitude is South latitude. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\ncomment :\n\nEast longitude relative to Greenwich meridian. See SWOT Nadir Altimeter User Handbook. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (31)\n\n\n\n\n\n\n\ntime_tai\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ncalendar :\n\ngregorian\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nsurface_classification_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\ncomment :\n\nComputed from a mask built with MODIS and GlobCover data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_1_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from first radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_2_surface_type_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type from second radiometer\n\nflag_meanings :\n\nopen_ocean near_coast land\n\nflag_values :\n\n[0 1 2]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nalt_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all altimeter flags except altimeter echo type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCompilation of all radiometer flags except radiometer surface type : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ngeo_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeophysical quality flag\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nCheck on validity of all geophysical fields : Set to default in the current issue\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmeteo_map_availability_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nECMWF meteorological map availability\n\nflag_meanings :\n\n2_maps_nominal 2_maps_degraded 1_map_closest_used no_valid_map\n\nflag_values :\n\n[0 1 2 3]\n\ncomment :\n\nPossible values are: 0 meaning ’2 maps, nominal’ (six hours apart), 1 meaning ’2 maps, degraded’ (more than six hours apart), 2 meaning ’1 map, closest map used’, 3 meaning ’no valid map’\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor_interp_qual\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction interpolation quality flag\n\nflag_meanings :\n\ngood degraded bad\n\nflag_values :\n\n[0 1 2]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nflag_meanings :\n\nno_rain rain high_rain_probability_from_altimeter high_probability_of_no_rain_from_altimeter ambiguous_situation_possibility_of_ice evaluation_not_possible\n\nflag_values :\n\n[0 1 2 3 4 5]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_1_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from first radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_2_rain_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer rain flag from second radiometer\n\nflag_meanings :\n\nno_rain rain\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nice flag\n\nflag_meanings :\n\nno_ice ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_1_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from first radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_side_2_sea_ice_flag\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer sea-ice flag from second radiometer\n\nflag_meanings :\n\nno_sea_ice sea_ice\n\nflag_values :\n\n[0 1]\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\naltitude\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1 Hz altitude of satellite\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\ncomment :\n\nAltitude of satellite above the reference ellipsoid. Associated quality flag is orb_state_diode_flag for the OGDR products, orb_state_rest_flag for the IGDR and GDR products\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor_zero_altitude\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmodel dry tropospheric correction at zero altitude\n\nstandard_name :\n\naltimeter_range_correction_due_to_dry_troposphere\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at Mean Sea Level Pressure at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. A dry tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for dry tropospheric range delays of the radar pulse. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer wet tropospheric correction\n\nstandard_name :\n\naltimeter_range_correction_due_to_wet_troposphere\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nm\n\ncomment :\n\nA wet tropospheric correction must be added (negative value) to the instrument range to correct this range measurement for wet tropospheric range delays of the radar pulse\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS solution) above reference ellipsoid\n\nsource :\n\nMSS_CNES_CLS-2015\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography above geoid\n\nsource :\n\nMDT_CNES_CLS-2018\n\ninstitution :\n\nCLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth/land elevation\n\nsource :\n\nACE2\n\ninstitution :\n\nEAPRS Laboratory\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninverted barometer height correction\n\nstandard_name :\n\nsea_surface_height_correction_due_to_air_pressure_at_low_frequency\n\nsource :\n\nEuropean Center for Medium Range Weather Forecasting\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\ncomment :\n\nComputed at the altimeter time-tag from the interpolation of 2 meteorological fields that surround the altimeter time-tag. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ndac\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\ninstitution :\n\nLEGOS/CLS/CNES\n\nunits :\n\nm\n\ncomment :\n\nSum of the high frequency fluctuations correction and of the low frequency inverted barometer correction (inv_bar_cor). See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES solution)\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_geocentric_ocean_tide\n\nsource :\n\nFES2014b\n\ninstitution :\n\nLEGOS/NOVELTIS/CNES/CLS\n\nunits :\n\nm\n\ncomment :\n\nIncludes the equilibrium long-period ocean tide height and only the short-period part of the corresponding loading tide. The permanent tide (zero frequency) is not included in this parameter because it is included in the geoid and mean sea surface (geoid, mean_sea_surface_cnescls). To get the total geocentric tide height (FES solution), do: ocean_tide_fes + ocean_tide_non_eq. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n218.18 kiB\n21.92 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid earth tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_earth_tide\n\nsource :\n\nCartwright and Edden [1973] Corrected tables of tidal harmonics - J. Geophys. J. R. Astr. Soc., 33, 253-264.\n\nunits :\n\nm\n\ncomment :\n\nCalculated using Cartwright and Tayler tables and consisting of the second and third degree constituents. The permanent tide (zero frequency) is not included. See SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nstandard_name :\n\nsea_surface_height_amplitude_due_to_pole_tide\n\nsource :\n\nDesai, S., Wahr, J. & Beckley, B. J Geod [2015] 89: 1233\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninternal tide height\n\nsource :\n\nE. D. Zaron. Baroclinic tidal sea level from exact-repeat mission altimetry. Journal of Physical Oceanography, 49(1):193-210, 2019.\n\nunits :\n\nm\n\ncomment :\n\nSee SWOT Nadir Altimeter User Handbook\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nwind_speed_alt\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.06 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nwind_speed_alt_mle3\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltimeter wind speed (MLE3 retracking)\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\ncomment :\n\nShould not be used over land. See SWOT Nadir Altimeter User Handbook. A calibration bias of +0.109 dB has been added to the Ku band backscatter coefficient (/data_01/ku/sig0_ocean_mle3) before computing the wind speed\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer water vapor content\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(time)\n\n\nfloat32\n\n\ndask.array<chunksize=(2806,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer liquid water content\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAMR\n\ninstitution :\n\nNASA/JPL\n\nunits :\n\nkg/m^2\n\ncomment :\n\nShould not be used over land\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n109.09 kiB\n10.96 kiB\n\n\nShape\n(27927,)\n(2806,)\n\n\nDask graph\n10 chunks in 21 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 27927 1\n\n\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(Float64Index([759929456.5671339, 759929457.6690049, 759929458.770874,\n 759929459.872746, 759929460.9746141, 759929462.0764852,\n 759929463.1783538, 759929464.2802248, 759929465.3820939,\n 759929466.4839649,\n ...\n 759960314.5902781, 759960315.6921468, 759960316.7940178,\n 759960317.8958869, 759960318.9977579, 759960320.099627,\n 759960321.201498, 759960322.3033671, 759960323.4052382,\n 759960324.5071082],\n dtype='float64', name='time', length=27927))Attributes: (0)\n\n\n\n\nPlot\n\nplt.figure(figsize=(15, 5))\nax = plt.axes(projection=ccrs.PlateCarree())\nax.set_global()\nax.coastlines()\nplt.scatter(x=ds_nadir.longitude, y=ds_nadir.latitude, c=ds_nadir.depth_or_elevation, marker='.')\nplt.colorbar().set_label('Depth or Elevation (m)')", "crumbs": [ "Tutorials", "Dataset Specific", @@ -3452,7 +3452,7 @@ "href": "notebooks/datasets/OISSS_L4_multimission_monthly_v1.html#plot-an-example", "title": "Direct S3 Data Access tutorial (Multi-Mission Optimally Interpolated Sea Surface Salinity Global Monthly Dataset V1)", "section": "Plot an example", - "text": "Plot an example\n\nplt.figure(figsize=(15,5))\nd['sss'][:,:,0].plot(cmap=plt.cm.jet,vmin=30,vmax=37)\n\n\n\n\n\n\n\n\n\nimport pylab as plt\n\nfig,ax=plt.subplots(2,2,figsize=(20,10))\n\nvars=d.keys()\n\naxx=ax.flatten()\n\n#set the colorbar limit\nclim=[[30,37],[0,0.1],[30,37],[-1,1]]\n\nfor i,var in enumerate(vars):\n d[var][:,:,0].plot(ax=axx[i],cmap='jet',vmin=clim[i][0],vmax=clim[i][1])\n axx[i].set_title(var)\nplt.tight_layout()\n\n\n\n\n\n\n\n\n\nLoad all files to plot a time series\n\n%timeit\nfileset = [s3sys.open(file) for file in fns]\ndata = xr.open_mfdataset(fileset ,concat_dim='time',combine='nested',engine='h5netcdf')\ndata\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 1440, latitude: 720, time: 120)\nCoordinates:\n * longitude (longitude) float32 -179.9 -179.6 -179.4 ... 179.6 179.9\n * latitude (latitude) float32 -89.88 -89.62 -89.38 ... 89.62 89.88\n * time (time) datetime64[ns] 2011-09-16 2011-10-16 ... 2021-08-16\nData variables:\n sss (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_climatology (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_anomaly (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\nAttributes: (12/42)\n Conventions: CF-1.8, ACDD-1.3\n standard_name_vocabulary: CF Standard Name Table v27\n Title: Multi-Mission Optimally Interpolated Sea S...\n Short_Name: OISSS_L4_multimission_v1_monthly\n Version: V1.0\n Processing_Level: Level 4\n ... ...\n geospatial_lat_resolution: [0.25]\n geospatial_lat_units: degrees_north\n geospatial_lon_min: [-180.]\n geospatial_lon_max: [180.]\n geospatial_lon_resolution: [0.25]\n geospatial_lon_units: degrees_eastxarray.DatasetDimensions:longitude: 1440latitude: 720time: 120Coordinates: (3)longitude(longitude)float32-179.9 -179.6 ... 179.6 179.9long_name :longitudestandard_name :longitudeunits :degrees_eastaxis :Xvalid_min :[-180.]valid_max :[180.]coverage_content_type :coordinatearray([-179.875, -179.625, -179.375, ..., 179.375, 179.625, 179.875],\n dtype=float32)latitude(latitude)float32-89.88 -89.62 ... 89.62 89.88long_name :latitudestandard_name :latitudeunits :degrees_northaxis :Yvalid_min :[-90.]valid_max :[90.]coverage_content_type :coordinatearray([-89.875, -89.625, -89.375, ..., 89.375, 89.625, 89.875],\n dtype=float32)time(time)datetime64[ns]2011-09-16 ... 2021-08-16long_name :reference time of analyzed variable field corresponding to the center of the product time intervalstandard_name :timeaxis :Tcoverage_content_type :coordinatearray(['2011-09-16T00:00:00.000000000', '2011-10-16T00:00:00.000000000',\n '2011-11-16T00:00:00.000000000', '2011-12-16T00:00:00.000000000',\n '2012-01-16T00:00:00.000000000', '2012-02-15T00:00:00.000000000',\n '2012-03-16T00:00:00.000000000', '2012-04-16T00:00:00.000000000',\n '2012-05-16T00:00:00.000000000', '2012-06-16T00:00:00.000000000',\n '2012-07-16T00:00:00.000000000', '2012-08-16T00:00:00.000000000',\n '2012-09-16T00:00:00.000000000', '2012-10-16T00:00:00.000000000',\n '2012-11-16T00:00:00.000000000', '2012-12-16T00:00:00.000000000',\n '2013-01-16T00:00:00.000000000', '2013-02-15T00:00:00.000000000',\n '2013-03-16T00:00:00.000000000', '2013-04-16T00:00:00.000000000',\n '2013-05-16T00:00:00.000000000', '2013-06-16T00:00:00.000000000',\n '2013-07-16T00:00:00.000000000', '2013-08-16T00:00:00.000000000',\n '2013-09-16T00:00:00.000000000', '2013-10-16T00:00:00.000000000',\n '2013-11-16T00:00:00.000000000', '2013-12-16T00:00:00.000000000',\n '2014-01-16T00:00:00.000000000', '2014-02-15T00:00:00.000000000',\n '2014-03-16T00:00:00.000000000', '2014-04-16T00:00:00.000000000',\n '2014-05-16T00:00:00.000000000', '2014-06-16T00:00:00.000000000',\n '2014-07-16T00:00:00.000000000', '2014-08-16T00:00:00.000000000',\n '2014-09-16T00:00:00.000000000', '2014-10-16T00:00:00.000000000',\n '2014-11-16T00:00:00.000000000', '2014-12-16T00:00:00.000000000',\n '2015-01-16T00:00:00.000000000', '2015-02-15T00:00:00.000000000',\n '2015-03-16T00:00:00.000000000', '2015-04-16T00:00:00.000000000',\n '2015-05-16T00:00:00.000000000', '2015-06-16T00:00:00.000000000',\n '2015-07-16T00:00:00.000000000', '2015-08-16T00:00:00.000000000',\n '2015-09-16T00:00:00.000000000', '2015-10-16T00:00:00.000000000',\n '2015-11-16T00:00:00.000000000', '2015-12-16T00:00:00.000000000',\n '2016-01-16T00:00:00.000000000', '2016-02-15T00:00:00.000000000',\n '2016-03-15T00:00:00.000000000', '2016-04-15T00:00:00.000000000',\n '2016-05-15T00:00:00.000000000', '2016-06-15T00:00:00.000000000',\n '2016-07-15T00:00:00.000000000', '2016-08-15T00:00:00.000000000',\n '2016-09-15T00:00:00.000000000', '2016-10-15T00:00:00.000000000',\n '2016-11-15T00:00:00.000000000', '2016-12-16T00:00:00.000000000',\n '2017-01-16T00:00:00.000000000', '2017-02-15T00:00:00.000000000',\n '2017-03-16T00:00:00.000000000', '2017-04-16T00:00:00.000000000',\n '2017-05-16T00:00:00.000000000', '2017-06-16T00:00:00.000000000',\n '2017-07-16T00:00:00.000000000', '2017-08-16T00:00:00.000000000',\n '2017-09-16T00:00:00.000000000', '2017-10-16T00:00:00.000000000',\n '2017-11-16T00:00:00.000000000', '2017-12-16T00:00:00.000000000',\n '2018-01-16T00:00:00.000000000', '2018-02-15T00:00:00.000000000',\n '2018-03-16T00:00:00.000000000', '2018-04-16T00:00:00.000000000',\n '2018-05-16T00:00:00.000000000', '2018-06-16T00:00:00.000000000',\n '2018-07-16T00:00:00.000000000', '2018-08-16T00:00:00.000000000',\n '2018-09-16T00:00:00.000000000', '2018-10-16T00:00:00.000000000',\n '2018-11-16T00:00:00.000000000', '2018-12-16T00:00:00.000000000',\n '2019-01-16T00:00:00.000000000', '2019-02-15T00:00:00.000000000',\n '2019-03-16T00:00:00.000000000', '2019-04-16T00:00:00.000000000',\n '2019-05-16T00:00:00.000000000', '2019-06-16T00:00:00.000000000',\n '2019-07-16T00:00:00.000000000', '2019-08-16T00:00:00.000000000',\n '2019-09-16T00:00:00.000000000', '2019-10-16T00:00:00.000000000',\n '2019-11-16T00:00:00.000000000', '2019-12-16T00:00:00.000000000',\n '2020-01-16T00:00:00.000000000', '2020-02-15T00:00:00.000000000',\n '2020-03-15T00:00:00.000000000', '2020-04-15T00:00:00.000000000',\n '2020-05-15T00:00:00.000000000', '2020-06-15T00:00:00.000000000',\n '2020-07-15T00:00:00.000000000', '2020-08-15T00:00:00.000000000',\n '2020-09-15T00:00:00.000000000', '2020-10-15T00:00:00.000000000',\n '2020-11-15T00:00:00.000000000', '2020-12-16T00:00:00.000000000',\n '2021-01-16T00:00:00.000000000', '2021-02-15T00:00:00.000000000',\n '2021-03-16T00:00:00.000000000', '2021-04-16T00:00:00.000000000',\n '2021-05-16T00:00:00.000000000', '2021-06-16T00:00:00.000000000',\n '2021-07-16T00:00:00.000000000', '2021-08-16T00:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (4)sss(latitude, longitude, time)float32dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>long_name :multi-mission OISSS monthly averagestandard_name :sea_surface_salinityunits :1e-3valid_min :[0.]valid_max :[45.]add_factor :[0.]coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\n\n\n\nsss_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS monthly average\n\nunits :\n\n1e-3\n\nvalid_min :\n\n[0.]\n\nvalid_max :\n\n[45.]\n\nadd_factor :\n\n[0.]\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\n\n\n\nsss_climatology\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmonthly climatological sea surface salinity based on multi-mission OISSS dataset from 09/2011 to 08/2021\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n[0.]\n\nvalid_max :\n\n[45.]\n\nadd_factor :\n\n[0.]\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\n\n\n\nsss_anomaly\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface salinity anomaly relative to the product-based monthly climatology\n\nunits :\n\n1e-3\n\nvalid_min :\n\n[-10.]\n\nvalid_max :\n\n[10.]\n\nadd_factor :\n\n[0.]\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\nAttributes: (42)Conventions :CF-1.8, ACDD-1.3standard_name_vocabulary :CF Standard Name Table v27Title :Multi-Mission Optimally Interpolated Sea Surface Salinity Global Dataset V1.0 MonthlyShort_Name :OISSS_L4_multimission_v1_monthlyVersion :V1.0Processing_Level :Level 4source :Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662sourse_of_input_Aquarius_SSS :Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5sourse_of_input_SMAP_SSS :Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.sourse_of_input_SMOS_SSS :ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/accessplatform :Aquarius/SAC-D, SMAP, SMOSinstrument :Aquarius radiometer, SMAP radiometer, SMOS MIRASCreation_Date :2022-02-15T02:49:51ZCreator_Name :Oleg MelnichenkoCreator_Email :oleg@hawaii.eduCreator_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBProject :NASA Ocean SalinityKeywords :Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSSKeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science KeywordsInstitution :IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CAPublisher_Name :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzPublisher_Email :oleg@hawaii.eduPublisher_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBDataset_Citation_Authors :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzDataset_Citation_Year :2021Dataset_Citation_Product :Aquarius/SMAP Sea Surface Salinity Optimum Interpolation AnalysisTechnical_Notes :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdfyear_of_observation :2011month_of_observation :9center_day_of_observation :16time_coverage_start :2011-09-01T12:00:00Ztime_coverage_end :2011-09-30T12:00:00Ztime_coverage_resolution :P1Mcdm_data_type :gridgeospatial_lat_min :[-90.]geospatial_lat_max :[90.]geospatial_lat_resolution :[0.25]geospatial_lat_units :degrees_northgeospatial_lon_min :[-180.]geospatial_lon_max :[180.]geospatial_lon_resolution :[0.25]geospatial_lon_units :degrees_east" + "text": "Plot an example\n\nplt.figure(figsize=(15,5))\nd['sss'][:,:,0].plot(cmap=plt.cm.jet,vmin=30,vmax=37)\n\n\n\n\n\n\n\n\n\nimport pylab as plt\n\nfig,ax=plt.subplots(2,2,figsize=(20,10))\n\nvars=d.keys()\n\naxx=ax.flatten()\n\n#set the colorbar limit\nclim=[[30,37],[0,0.1],[30,37],[-1,1]]\n\nfor i,var in enumerate(vars):\n d[var][:,:,0].plot(ax=axx[i],cmap='jet',vmin=clim[i][0],vmax=clim[i][1])\n axx[i].set_title(var)\nplt.tight_layout()\n\n\n\n\n\n\n\n\n\nLoad all files to plot a time series\n\n%timeit\nfileset = [s3sys.open(file) for file in fns]\ndata = xr.open_mfdataset(fileset ,concat_dim='time',combine='nested',engine='h5netcdf')\ndata\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 1440, latitude: 720, time: 120)\nCoordinates:\n * longitude (longitude) float32 -179.9 -179.6 -179.4 ... 179.6 179.9\n * latitude (latitude) float32 -89.88 -89.62 -89.38 ... 89.62 89.88\n * time (time) datetime64[ns] 2011-09-16 2011-10-16 ... 2021-08-16\nData variables:\n sss (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_climatology (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_anomaly (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\nAttributes: (12/42)\n Conventions: CF-1.8, ACDD-1.3\n standard_name_vocabulary: CF Standard Name Table v27\n Title: Multi-Mission Optimally Interpolated Sea S...\n Short_Name: OISSS_L4_multimission_v1_monthly\n Version: V1.0\n Processing_Level: Level 4\n ... ...\n geospatial_lat_resolution: [0.25]\n geospatial_lat_units: degrees_north\n geospatial_lon_min: [-180.]\n geospatial_lon_max: [180.]\n geospatial_lon_resolution: [0.25]\n geospatial_lon_units: degrees_eastxarray.DatasetDimensions:longitude: 1440latitude: 720time: 120Coordinates: (3)longitude(longitude)float32-179.9 -179.6 ... 179.6 179.9long_name :longitudestandard_name :longitudeunits :degrees_eastaxis :Xvalid_min :[-180.]valid_max :[180.]coverage_content_type :coordinatearray([-179.875, -179.625, -179.375, ..., 179.375, 179.625, 179.875],\n dtype=float32)latitude(latitude)float32-89.88 -89.62 ... 89.62 89.88long_name :latitudestandard_name :latitudeunits :degrees_northaxis :Yvalid_min :[-90.]valid_max :[90.]coverage_content_type :coordinatearray([-89.875, -89.625, -89.375, ..., 89.375, 89.625, 89.875],\n dtype=float32)time(time)datetime64[ns]2011-09-16 ... 2021-08-16long_name :reference time of analyzed variable field corresponding to the center of the product time intervalstandard_name :timeaxis :Tcoverage_content_type :coordinatearray(['2011-09-16T00:00:00.000000000', '2011-10-16T00:00:00.000000000',\n '2011-11-16T00:00:00.000000000', '2011-12-16T00:00:00.000000000',\n '2012-01-16T00:00:00.000000000', '2012-02-15T00:00:00.000000000',\n '2012-03-16T00:00:00.000000000', '2012-04-16T00:00:00.000000000',\n '2012-05-16T00:00:00.000000000', '2012-06-16T00:00:00.000000000',\n '2012-07-16T00:00:00.000000000', '2012-08-16T00:00:00.000000000',\n '2012-09-16T00:00:00.000000000', '2012-10-16T00:00:00.000000000',\n '2012-11-16T00:00:00.000000000', '2012-12-16T00:00:00.000000000',\n '2013-01-16T00:00:00.000000000', '2013-02-15T00:00:00.000000000',\n '2013-03-16T00:00:00.000000000', '2013-04-16T00:00:00.000000000',\n '2013-05-16T00:00:00.000000000', '2013-06-16T00:00:00.000000000',\n '2013-07-16T00:00:00.000000000', '2013-08-16T00:00:00.000000000',\n '2013-09-16T00:00:00.000000000', '2013-10-16T00:00:00.000000000',\n '2013-11-16T00:00:00.000000000', '2013-12-16T00:00:00.000000000',\n '2014-01-16T00:00:00.000000000', '2014-02-15T00:00:00.000000000',\n '2014-03-16T00:00:00.000000000', '2014-04-16T00:00:00.000000000',\n '2014-05-16T00:00:00.000000000', '2014-06-16T00:00:00.000000000',\n '2014-07-16T00:00:00.000000000', '2014-08-16T00:00:00.000000000',\n '2014-09-16T00:00:00.000000000', '2014-10-16T00:00:00.000000000',\n '2014-11-16T00:00:00.000000000', '2014-12-16T00:00:00.000000000',\n '2015-01-16T00:00:00.000000000', '2015-02-15T00:00:00.000000000',\n '2015-03-16T00:00:00.000000000', '2015-04-16T00:00:00.000000000',\n '2015-05-16T00:00:00.000000000', '2015-06-16T00:00:00.000000000',\n '2015-07-16T00:00:00.000000000', '2015-08-16T00:00:00.000000000',\n '2015-09-16T00:00:00.000000000', '2015-10-16T00:00:00.000000000',\n '2015-11-16T00:00:00.000000000', '2015-12-16T00:00:00.000000000',\n '2016-01-16T00:00:00.000000000', '2016-02-15T00:00:00.000000000',\n '2016-03-15T00:00:00.000000000', '2016-04-15T00:00:00.000000000',\n '2016-05-15T00:00:00.000000000', '2016-06-15T00:00:00.000000000',\n '2016-07-15T00:00:00.000000000', '2016-08-15T00:00:00.000000000',\n '2016-09-15T00:00:00.000000000', '2016-10-15T00:00:00.000000000',\n '2016-11-15T00:00:00.000000000', '2016-12-16T00:00:00.000000000',\n '2017-01-16T00:00:00.000000000', '2017-02-15T00:00:00.000000000',\n '2017-03-16T00:00:00.000000000', '2017-04-16T00:00:00.000000000',\n '2017-05-16T00:00:00.000000000', '2017-06-16T00:00:00.000000000',\n '2017-07-16T00:00:00.000000000', '2017-08-16T00:00:00.000000000',\n '2017-09-16T00:00:00.000000000', '2017-10-16T00:00:00.000000000',\n '2017-11-16T00:00:00.000000000', '2017-12-16T00:00:00.000000000',\n '2018-01-16T00:00:00.000000000', '2018-02-15T00:00:00.000000000',\n '2018-03-16T00:00:00.000000000', '2018-04-16T00:00:00.000000000',\n '2018-05-16T00:00:00.000000000', '2018-06-16T00:00:00.000000000',\n '2018-07-16T00:00:00.000000000', '2018-08-16T00:00:00.000000000',\n '2018-09-16T00:00:00.000000000', '2018-10-16T00:00:00.000000000',\n '2018-11-16T00:00:00.000000000', '2018-12-16T00:00:00.000000000',\n '2019-01-16T00:00:00.000000000', '2019-02-15T00:00:00.000000000',\n '2019-03-16T00:00:00.000000000', '2019-04-16T00:00:00.000000000',\n '2019-05-16T00:00:00.000000000', '2019-06-16T00:00:00.000000000',\n '2019-07-16T00:00:00.000000000', '2019-08-16T00:00:00.000000000',\n '2019-09-16T00:00:00.000000000', '2019-10-16T00:00:00.000000000',\n '2019-11-16T00:00:00.000000000', '2019-12-16T00:00:00.000000000',\n '2020-01-16T00:00:00.000000000', '2020-02-15T00:00:00.000000000',\n '2020-03-15T00:00:00.000000000', '2020-04-15T00:00:00.000000000',\n '2020-05-15T00:00:00.000000000', '2020-06-15T00:00:00.000000000',\n '2020-07-15T00:00:00.000000000', '2020-08-15T00:00:00.000000000',\n '2020-09-15T00:00:00.000000000', '2020-10-15T00:00:00.000000000',\n '2020-11-15T00:00:00.000000000', '2020-12-16T00:00:00.000000000',\n '2021-01-16T00:00:00.000000000', '2021-02-15T00:00:00.000000000',\n '2021-03-16T00:00:00.000000000', '2021-04-16T00:00:00.000000000',\n '2021-05-16T00:00:00.000000000', '2021-06-16T00:00:00.000000000',\n '2021-07-16T00:00:00.000000000', '2021-08-16T00:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (4)sss(latitude, longitude, time)float32dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>long_name :multi-mission OISSS monthly averagestandard_name :sea_surface_salinityunits :1e-3valid_min :[0.]valid_max :[45.]add_factor :[0.]coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\n\n\n\nsss_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS monthly average\n\nunits :\n\n1e-3\n\nvalid_min :\n\n[0.]\n\nvalid_max :\n\n[45.]\n\nadd_factor :\n\n[0.]\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\n\n\n\nsss_climatology\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmonthly climatological sea surface salinity based on multi-mission OISSS dataset from 09/2011 to 08/2021\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n[0.]\n\nvalid_max :\n\n[45.]\n\nadd_factor :\n\n[0.]\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\n\n\n\nsss_anomaly\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface salinity anomaly relative to the product-based monthly climatology\n\nunits :\n\n1e-3\n\nvalid_min :\n\n[-10.]\n\nvalid_max :\n\n[10.]\n\nadd_factor :\n\n[0.]\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n474.61 MiB\n3.96 MiB\n\n\nShape\n(720, 1440, 120)\n(720, 1440, 1)\n\n\nCount\n360 Tasks\n120 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 120 1440 720\n\n\n\n\n\nAttributes: (42)Conventions :CF-1.8, ACDD-1.3standard_name_vocabulary :CF Standard Name Table v27Title :Multi-Mission Optimally Interpolated Sea Surface Salinity Global Dataset V1.0 MonthlyShort_Name :OISSS_L4_multimission_v1_monthlyVersion :V1.0Processing_Level :Level 4source :Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662sourse_of_input_Aquarius_SSS :Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5sourse_of_input_SMAP_SSS :Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.sourse_of_input_SMOS_SSS :ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/accessplatform :Aquarius/SAC-D, SMAP, SMOSinstrument :Aquarius radiometer, SMAP radiometer, SMOS MIRASCreation_Date :2022-02-15T02:49:51ZCreator_Name :Oleg MelnichenkoCreator_Email :oleg@hawaii.eduCreator_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBProject :NASA Ocean SalinityKeywords :Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSSKeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science KeywordsInstitution :IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CAPublisher_Name :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzPublisher_Email :oleg@hawaii.eduPublisher_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBDataset_Citation_Authors :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzDataset_Citation_Year :2021Dataset_Citation_Product :Aquarius/SMAP Sea Surface Salinity Optimum Interpolation AnalysisTechnical_Notes :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdfyear_of_observation :2011month_of_observation :9center_day_of_observation :16time_coverage_start :2011-09-01T12:00:00Ztime_coverage_end :2011-09-30T12:00:00Ztime_coverage_resolution :P1Mcdm_data_type :gridgeospatial_lat_min :[-90.]geospatial_lat_max :[90.]geospatial_lat_resolution :[0.25]geospatial_lat_units :degrees_northgeospatial_lon_min :[-180.]geospatial_lon_max :[180.]geospatial_lon_resolution :[0.25]geospatial_lon_units :degrees_east" }, { "objectID": "notebooks/datasets/OISSS_L4_multimission_monthly_v1.html#plot-a-time-series-at-a-point-in-the-california-current.", @@ -3466,7 +3466,7 @@ "href": "notebooks/datasets/SWOTHR_localmachine.html#accessing-and-visualizing-swot-datasets", "title": "SWOT Hydrology Dataset Exploration on a local machine", "section": "Accessing and Visualizing SWOT Datasets", - "text": "Accessing and Visualizing SWOT Datasets\n\nRequirement:\nLocal compute environment e.g. laptop, server: this tutorial can be run on your local machine.\n\n\nLearning Objectives:\n\nAccess SWOT HR data prodcuts (archived in NASA Earthdata Cloud) within the AWS cloud, by downloading to local machine\nVisualize accessed data for a quick check\n\n\nSWOT Level 2 KaRIn High Rate Version 2.0 Datasets:\n\nRiver Vector Shapefile - SWOT_L2_HR_RIVERSP_2.0\nLake Vector Shapefile - SWOT_L2_HR_LAKESP_2.0\nWater Mask Pixel Cloud NetCDF - SWOT_L2_HR_PIXC_2.0\nWater Mask Pixel Cloud Vector Attribute NetCDF - SWOT_L2_HR_PIXCVec_2.0\nRaster NetCDF - SWOT_L2_HR_Raster_2.0\nSingle Look Complex Data product - SWOT_L1B_HR_SLC_2.0\n\nNotebook Author: Cassie Nickles, NASA PO.DAAC (Feb 2024) || Other Contributors: Zoe Walschots (PO.DAAC Summer Intern 2023), Catalina Taglialatela (NASA PO.DAAC), Luis Lopez (NASA NSIDC DAAC)\nLast updated: 7 Feb 2024\n\n\n\nLibraries Needed\n\nimport glob\nimport h5netcdf\nimport xarray as xr\nimport pandas as pd\nimport geopandas as gpd\nimport contextily as cx\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport hvplot.xarray\nimport zipfile\nimport earthaccess\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nEarthdata Login\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. If you don’t already have one, please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up. We use earthaccess to authenticate your login credentials below.\n\nauth = earthaccess.login()\n\n\n\nSingle File Access\n\n1. River Vector Shapefiles\nThe https access link can be found using earthaccess data search. Since this collection consists of Reach and Node files, we need to extract only the granule for the Reach file. We do this by filtering for the ‘Reach’ title in the data link.\nAlternatively, Earthdata Search (see tutorial) can be used to manually search in a GUI interface.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for the data of interest\n\n#Retrieves granule from the day we want, in this case by passing to `earthdata.search_data` function the data collection shortname, temporal bounds, and filter by wildcards\nriver_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Reach*_009_NA*') # here we filter by Reach files (not node), pass=009, continent code=NA\n\nGranules found: 5\n\n\n\n\nDowload, unzip, read the data\nLet’s download the first data file! earthaccess.download has a list as the input format, so we need to put brackets around the single file we pass.\n\nearthaccess.download([river_results[0]], \"./data_downloads\")\n\n Getting 1 granules, approx download size: 0.01 GB\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_HR_RiverSP_Reach_007_009_NA_20231123T172635_20231123T172636_PIC0_01.zip']\n\n\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we must first extract the data to open it. First, we’ll programmatically get the filename we just downloaded, and then extract all data to the data_downloads folder.\n\nfilename = earthaccess.results.DataGranule.data_links(river_results[0], access='external')\nfilename = filename[0].split(\"/\")[-1]\nfilename\n\n'SWOT_L2_HR_RiverSP_Reach_007_009_NA_20231123T172635_20231123T172636_PIC0_01.zip'\n\n\n\nwith zipfile.ZipFile(f'data_downloads/{filename}', 'r') as zip_ref:\n zip_ref.extractall('data_downloads')\n\nOpen the shapefile using geopandas\n\nfilename_shp = filename.replace('.zip','.shp')\n\n\nSWOT_HR_shp1 = gpd.read_file(f'data_downloads/{filename_shp}') \n\n#view the attribute table\nSWOT_HR_shp1 \n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n71224500951\n-1.000000e+12\n-1.000000e+12\nno_data\n48.517717\n-93.692086\nRainy River\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n1480.031\n53\n244919.492\n10586.381484\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.76076 48.51651, -93.76035 48.5...\n\n\n1\n71224700013\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.777900\n-93.233350\nno_data\n3.364954e+02\n9.003000e-02\n2.290000e-03\n...\n1239358.412\n18\n3719.676\n3514.736672\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.21387 48.78466, -93.21403 48.7...\n\n\n2\n71224700021\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.772163\n-93.266891\nno_data\n3.365123e+02\n9.199000e-02\n1.902000e-02\n...\n76609.119\n8\n5305.752\n1586.075688\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.25587 48.77340, -93.25628 48.7...\n\n\n3\n71224700033\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.733727\n-93.116424\nno_data\n3.365715e+02\n9.068000e-02\n1.112000e-02\n...\n297730.945\n20\n306795.237\n3904.961218\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-93.09779 48.73888, -93.09820 48.7...\n\n\n4\n71224700041\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.720271\n-93.113458\nno_data\n3.364742e+02\n9.085000e-02\n1.238000e-02\n...\n0.000\n6\n302890.276\n1203.102119\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.12101 48.72305, -93.12060 48.7...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n926\n77125000241\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:38Z\n17.960957\n-100.025397\nno_data\n3.560650e+02\n1.501928e+02\n1.501928e+02\n...\n864.151\n70\n464330.310\n13953.442643\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-100.06409 17.97308, -100.06403 17...\n\n\n927\n77125000254\n-1.000000e+12\n-1.000000e+12\nno_data\n17.949648\n-99.995193\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n21491.314\n2\n464735.375\n405.065100\n-1.000000e+12\n10286\n1\n1\n0\nLINESTRING (-99.99547 17.95148, -99.99564 17.9...\n\n\n928\n77125000261\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:47Z\n18.362207\n-100.696472\nno_data\n2.316304e+02\n9.208000e-02\n1.946000e-02\n...\n3624.715\n56\n325106.825\n11105.124379\n-1.000000e+12\n0\n4\n1\n0\nLINESTRING (-100.68734 18.40208, -100.68723 18...\n\n\n929\n77125000263\n-1.000000e+12\n-1.000000e+12\nno_data\n17.956269\n-99.961388\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n43956.311\n49\n474450.182\n9714.807127\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.99398 17.94824, -99.99369 17.9...\n\n\n930\n77125000273\n-1.000000e+12\n-1.000000e+12\nno_data\n17.952683\n-99.906755\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n283915.163\n49\n484179.822\n9729.640027\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.93256 17.94746, -99.93273 17.9...\n\n\n\n\n931 rows × 127 columns\n\n\n\n\n\n\nQuickly plot the SWOT river data\n\n# Simple plot\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp1.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=SWOT_HR_shp1.crs, source=cx.providers.OpenTopoMap)\n\n\n\n\n\n\n\n\n\n# Another way to plot geopandas dataframes is with `explore`, which also plots a basemap\n#SWOT_HR_shp1.explore()\n\n\n\n2. Lake Vector Shapefiles\nThe lake vector shapefiles can be accessed in the same way as the river shapefiles above.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for data of interest\n\nlake_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_LAKESP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Obs*_009_NA*') # here we filter by files with 'Obs' in the name (This collection has three options: Obs, Unassigned, and Prior), pass #8 and continent code=NA\n\nGranules found: 2\n\n\nLet’s download the first data file! earthaccess.download has a list as the input format, so we need to put brackets around the single file we pass.\n\nearthaccess.download([lake_results[0]], \"./data_downloads\")\n\n Getting 1 granules, approx download size: 0.06 GB\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_HR_LakeSP_Obs_008_009_NA_20231214T141139_20231214T142322_PIC0_01.zip']\n\n\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we must first extract the data to open it. First, we’ll programmatically get the filename we just downloaded, and then extract all data to the SWOT_downloads folder.\n\nfilename2 = earthaccess.results.DataGranule.data_links(lake_results[0], access='external')\nfilename2 = filename2[0].split(\"/\")[-1]\nfilename2\n\n'SWOT_L2_HR_LakeSP_Obs_008_009_NA_20231214T141139_20231214T142322_PIC0_01.zip'\n\n\n\nwith zipfile.ZipFile(f'data_downloads/{filename2}', 'r') as zip_ref:\n zip_ref.extractall('data_downloads')\n\nOpen the shapefile using geopandas\n\nfilename_shp2 = filename2.replace('.zip','.shp')\nfilename_shp2\n\n'SWOT_L2_HR_LakeSP_Obs_008_009_NA_20231214T141139_20231214T142322_PIC0_01.shp'\n\n\n\nSWOT_HR_shp2 = gpd.read_file(f'data_downloads/{filename_shp2}') \n\n#view the attribute table\nSWOT_HR_shp2\n\n\n\n\n\n\n\n\n\nobs_id\nlake_id\noverlap\nn_overlap\nreach_id\ntime\ntime_tai\ntime_str\nwse\nwse_u\n...\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nlake_name\np_res_id\ngeometry\n\n\n\n\n0\n771190L999978\n7710050732;7710050703;7710050672;7710050662;77...\n9;86;79;70;65\n5\nno_data\n7.558783e+08\n7.558783e+08\n2023-12-14T14:12:29Z\n1888.880\n0.002\n...\n-0.016630\n-0.018661\n0.004459\n-1.865485\n-0.153819\n-0.005181\n-1.116717\nPRESA SOLS\n-99999999\nMULTIPOLYGON (((-100.49406 20.07574, -100.4938...\n\n\n1\n752199L999957\n7520013722;7520013783\n66;17\n2\nno_data\n7.558784e+08\n7.558784e+08\n2023-12-14T14:14:08Z\n156.216\n0.034\n...\n-0.014181\n-0.015942\n0.005326\n-2.293956\n-0.252575\n-0.004943\n-0.351363\nno_data\n-99999999\nMULTIPOLYGON (((-99.37239 25.63900, -99.37194 ...\n\n\n2\n752200L999987\n7520013712\n59\n1\nno_data\n7.558784e+08\n7.558784e+08\n2023-12-14T14:14:09Z\n171.336\n0.095\n...\n-0.014314\n-0.016066\n0.005341\n-2.289045\n-0.249914\n-0.004935\n-0.555793\nno_data\n-99999999\nMULTIPOLYGON (((-99.39476 25.73965, -99.39442 ...\n\n\n3\n752200L999975\n7520010832\n75\n1\nno_data\n7.558784e+08\n7.558784e+08\n2023-12-14T14:14:09Z\n173.704\n0.092\n...\n-0.014527\n-0.016270\n0.005346\n-2.288555\n-0.249523\n-0.004927\n-0.880471\nno_data\n-99999999\nMULTIPOLYGON (((-99.49457 25.75364, -99.49435 ...\n\n\n4\n752201L999995\n7520010502\n97\n1\nno_data\n7.558785e+08\n7.558785e+08\n2023-12-14T14:14:20Z\n86.140\n0.183\n...\n-0.014221\n-0.015947\n0.005429\n-2.310065\n-0.251561\n-0.004908\n-0.461625\nno_data\n-99999999\nMULTIPOLYGON (((-99.18978 26.22343, -99.18885 ...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n24067\n713255R000242\n7131518382\n98\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n8.600\n0.058\n...\n-0.003146\n-0.002480\n0.008959\n-2.268371\n-0.101818\n-0.002132\n0.371395\nno_data\n-99999999\nPOLYGON ((-88.09984 56.45882, -88.09993 56.458...\n\n\n24068\n713255R000243\n7131518562\n88\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n7.569\n0.046\n...\n-0.002484\n-0.002016\n0.011788\n-2.268953\n-0.101874\n-0.002134\n0.536599\nno_data\n-99999999\nPOLYGON ((-88.02194 56.44447, -88.02154 56.444...\n\n\n24069\n713255R000252\n7131519822\n96\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n7.010\n0.056\n...\n-0.002542\n-0.002187\n0.010853\n-2.268864\n-0.101836\n-0.002132\n0.410241\nno_data\n-99999999\nPOLYGON ((-88.07451 56.46812, -88.07396 56.467...\n\n\n24070\n713255R000253\n7131519842\n92\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n4.540\n0.118\n...\n-0.001758\n-0.001693\n0.012287\n-2.269519\n-0.101934\n-0.002135\n0.580966\nno_data\n-99999999\nPOLYGON ((-87.98967 56.45438, -87.98932 56.454...\n\n\n24071\n713255R000256\n7131524362\n61\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n5.420\n0.108\n...\n-0.001757\n-0.001759\n0.012288\n-2.269569\n-0.101906\n-0.002133\n0.503179\nno_data\n-99999999\nPOLYGON ((-88.02147 56.47136, -88.02104 56.471...\n\n\n\n\n24072 rows × 36 columns\n\n\n\n\n\n\nQuickly plot the SWOT lakes data\n\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp2.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=SWOT_HR_shp2.crs, source=cx.providers.OpenTopoMap)\n\n\n\n\n\n\n\n\nAccessing the remaining files is different than the shp files above. We do not need to extract the shapefiles from a zip file because the following SWOT HR collections are stored in netCDF files in the cloud. For the rest of the products, we will open via xarray, not geopandas.\n\n\n3. Water Mask Pixel Cloud NetCDF\n\n\nSearch for data collection and time of interest\n\npixc_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_PIXC_2.0', \n #granule_name = '*_009_*', # pass number 9 if we want to filter further\n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n bounding_box = (-106.62, 38.809, -106.54, 38.859)) # Lake Travis near Austin, TX\n\nGranules found: 18\n\n\nLet’s download one data file! earthaccess.download has a list as the input format, so we need to put brackets around the single file we pass.\n\nearthaccess.download([pixc_results[0]], \"./data_downloads\")\n\n Getting 1 granules, approx download size: 0.27 GB\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc']\n\n\n\n\nOpen data using xarray\nThe pixel cloud netCDF files are formatted with three groups titled, “pixel cloud”, “tvp”, or “noise” (more detail here). In order to access the coordinates and variables within the file, a group must be specified when calling xarray open_dataset.\n\nds_PIXC = xr.open_mfdataset(\"data_downloads/SWOT_L2_HR_PIXC_*.nc\", group = 'pixel_cloud', engine='h5netcdf')\nds_PIXC\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (points: 2831150, complex_depth: 2,\n num_pixc_lines: 3279)\nCoordinates:\n latitude (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\n longitude (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\nDimensions without coordinates: points, complex_depth, num_pixc_lines\nData variables: (12/61)\n azimuth_index (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\n range_index (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\n interferogram (points, complex_depth) float32 dask.array<chunksize=(2831150, 2), meta=np.ndarray>\n power_plus_y (points) float32 dask.array<chunksize=(2831150,), meta=np.ndarray>\n power_minus_y (points) float32 dask.array<chunksize=(2831150,), meta=np.ndarray>\n coherent_power (points) float32 dask.array<chunksize=(2831150,), meta=np.ndarray>\n ... ...\n pixc_line_qual (num_pixc_lines) float64 dask.array<chunksize=(3279,), meta=np.ndarray>\n pixc_line_to_tvp (num_pixc_lines) float32 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_first_valid (num_pixc_lines) float64 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_last_valid (num_pixc_lines) float64 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_first_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_last_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3279,), meta=np.ndarray>\nAttributes:\n description: cloud of geolocated interferogram pixels\n interferogram_size_azimuth: 3279\n interferogram_size_range: 5750\n looks_to_efflooks: 1.5509548020673398\n num_azimuth_looks: 7.0\n azimuth_offset: 3xarray.DatasetDimensions:points: 2831150complex_depth: 2num_pixc_lines: 3279Coordinates: (2)latitude(points)float64dask.array<chunksize=(2831150,), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northquality_flag :geolocation_qualvalid_min :-80.0valid_max :80.0comment :Geodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-180.0\n\nvalid_max :\n\n180.0\n\ncomment :\n\nLongitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (61)\n\n\n\n\n\n\n\nazimuth_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram azimuth index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram azimuth index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nrange_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram range index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram range index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninterferogram\n\n\n(points, complex_depth)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n-1e+20\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nComplex unflattened rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150, 2)\n(2831150, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 2831150\n\n\n\n\n\n\n\n\npower_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for plus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the plus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npower_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for minus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the minus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ncoherent_power\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent power combination of minus_y and plus_y channels\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower computed by combining the plus_y and minus_y channels coherently by co-aligning the phases (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nx_factor_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for plus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the plus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nx_factor_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for minus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the minus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nNoisy estimate of the fraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nUncertainty estimate of the water fraction estimate (width of noisy water frac estimate distribution).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nclassification\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclassification\n\nquality_flag :\n\nclassification_qual\n\nflag_meanings :\n\nland land_near_water water_near_land open_water dark_water low_coh_water_near_land open_low_coh_water\n\nflag_values :\n\n[1 2 3 4 5 6 7]\n\nvalid_min :\n\n1\n\nvalid_max :\n\n7\n\ncomment :\n\nFlags indicating water detection results.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nfalse_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfalse detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting water when there is none.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nmissed_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmissed detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting no water when there is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nprior_water_prob\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nprior water probability\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nPrior probability of water occurring.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nbright_land_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbright land flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_bright_land bright_land bright_land_or_water\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating areas that are not typically water but are expected to be bright (e.g., urban areas, ice). Flag value 2 indicates cases where prior data indicate land, but where prior_water_prob indicates possible water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the height error caused by layover, which may not be reliable on a pixel by pixel basis, but may be useful to augment aggregated height uncertainties.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\neff_num_rare_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of rare looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken to form the rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nHeight of the pixel above the reference ellipsoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ncross_track\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npixel_area\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel area\n\nunits :\n\nm^2\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninc\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nphase_noise_std\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase noise standard deviation\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the phase noise standard deviation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndlatitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of latitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the latitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndlongitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of longitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the longitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferogram phase\n\nunits :\n\nm/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_droll\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to spacecraft roll\n\nunits :\n\nm/degrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the spacecraft roll.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_dbaseline\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferometric baseline\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferometric baseline.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_drange\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to range (delay)\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the range (delay).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndarea_dheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of pixel area to reference height\n\nunits :\n\nm^2/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the pixel area to the reference height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\neff_num_medium_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of medium looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken in forming the medium interferogram (after adaptive averaging).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0 uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the sig0 measurement. The value is given as an additive (not multiplicative) linear term (not a term in decibels).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nphase_unwrapping_region\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase unwrapping region index\n\nunits :\n\n1\n\nvalid_min :\n\n-1\n\nvalid_max :\n\n99999999\n\ncomment :\n\nPhase unwrapping region index.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nambiguity_cost1\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nambiguity_cost2\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity 2nd minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity 2nd minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninstrument_range_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument range correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to range before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninstrument_phase_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument phase correction\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to phase before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninstrument_baseline_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument baseline correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to baseline before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0 and x_factor_plus_y and x_factor_minus_y.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ngeoid\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninterferogram_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nrare_power_suspect rare_phase_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded rare_power_bad rare_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 2048 4096 8192 16384 32768 262144 524288 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4161599488\n\ncomment :\n\nQuality flag for the interferogram quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nclassification_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_coherent_gain power_close_to_noise_floor detected_water_but_no_prior_water detected_water_but_bright_land water_false_detection_rate_suspect coherent_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded coherent_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 2048 8192 16384 32768 262144 524288 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3893159967\n\ncomment :\n\nQuality flag for the classification quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ngeolocation_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nlayover_significant phase_noise_suspect phase_unwrapping_suspect model_dry_tropo_cor_suspect model_wet_tropo_cor_suspect iono_cor_gim_ka_suspect xovercal_suspect medium_phase_suspect tvp_suspect sc_event_suspect small_karin_gap specular_ringing_degraded model_dry_tropo_cor_missing model_wet_tropo_cor_missing iono_cor_gim_ka_missing xovercal_missing geolocation_is_from_refloc no_geolocation_bad medium_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 32 64 4096 8192 16384 32768 524288 1048576 2097152 4194304 8388608 16777216 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4193841279\n\ncomment :\n\nQuality flag for the geolocation quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsig0_uncert_suspect sig0_cor_atmos_suspect noise_power_suspect xfactor_suspect rare_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded sig0_cor_atmos_missing noise_power_bad xfactor_bad rare_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 2048 8192 16384 32768 262144 524288 1048576 33554432 67108864 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3994871823\n\ncomment :\n\nQuality flag for sig0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npixc_line_qual\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_in_tile tvp_suspect sc_event_suspect small_karin_gap tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 8192 16384 32768 536870912 1073741824 2147483649]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3758153729\n\ncomment :\n\nQuality flag for pixel cloud data per rare-posted interferogram line (similar to slc_qual in the L1B_HR_SLC product)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n26.23 kB\n26.23 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\npixc_line_to_tvp\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud rare line to tvp index\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel cloud rare radar grid line index to tvp index mapping\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n13.12 kB\n13.12 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_first_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window starting index of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n26.23 kB\n26.23 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_last_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window ending index of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n26.23 kB\n26.23 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_first_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window starting cross-track distance in meters of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n13.12 kB\n13.12 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_last_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window ending cross-track distance in meters of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n13.12 kB\n13.12 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\nIndexes: (0)Attributes: (6)description :cloud of geolocated interferogram pixelsinterferogram_size_azimuth :3279interferogram_size_range :5750looks_to_efflooks :1.5509548020673398num_azimuth_looks :7.0azimuth_offset :3", + "text": "Accessing and Visualizing SWOT Datasets\n\nRequirement:\nLocal compute environment e.g. laptop, server: this tutorial can be run on your local machine.\n\n\nLearning Objectives:\n\nAccess SWOT HR data prodcuts (archived in NASA Earthdata Cloud) within the AWS cloud, by downloading to local machine\nVisualize accessed data for a quick check\n\n\nSWOT Level 2 KaRIn High Rate Version 2.0 Datasets:\n\nRiver Vector Shapefile - SWOT_L2_HR_RIVERSP_2.0\nLake Vector Shapefile - SWOT_L2_HR_LAKESP_2.0\nWater Mask Pixel Cloud NetCDF - SWOT_L2_HR_PIXC_2.0\nWater Mask Pixel Cloud Vector Attribute NetCDF - SWOT_L2_HR_PIXCVec_2.0\nRaster NetCDF - SWOT_L2_HR_Raster_2.0\nSingle Look Complex Data product - SWOT_L1B_HR_SLC_2.0\n\nNotebook Author: Cassie Nickles, NASA PO.DAAC (Feb 2024) || Other Contributors: Zoe Walschots (PO.DAAC Summer Intern 2023), Catalina Taglialatela (NASA PO.DAAC), Luis Lopez (NASA NSIDC DAAC)\nLast updated: 7 Feb 2024\n\n\n\nLibraries Needed\n\nimport glob\nimport h5netcdf\nimport xarray as xr\nimport pandas as pd\nimport geopandas as gpd\nimport contextily as cx\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport hvplot.xarray\nimport zipfile\nimport earthaccess\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nEarthdata Login\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. If you don’t already have one, please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up. We use earthaccess to authenticate your login credentials below.\n\nauth = earthaccess.login()\n\n\n\nSingle File Access\n\n1. River Vector Shapefiles\nThe https access link can be found using earthaccess data search. Since this collection consists of Reach and Node files, we need to extract only the granule for the Reach file. We do this by filtering for the ‘Reach’ title in the data link.\nAlternatively, Earthdata Search (see tutorial) can be used to manually search in a GUI interface.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for the data of interest\n\n#Retrieves granule from the day we want, in this case by passing to `earthdata.search_data` function the data collection shortname, temporal bounds, and filter by wildcards\nriver_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Reach*_009_NA*') # here we filter by Reach files (not node), pass=009, continent code=NA\n\nGranules found: 5\n\n\n\n\nDowload, unzip, read the data\nLet’s download the first data file! earthaccess.download has a list as the input format, so we need to put brackets around the single file we pass.\n\nearthaccess.download([river_results[0]], \"./data_downloads\")\n\n Getting 1 granules, approx download size: 0.01 GB\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_HR_RiverSP_Reach_007_009_NA_20231123T172635_20231123T172636_PIC0_01.zip']\n\n\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we must first extract the data to open it. First, we’ll programmatically get the filename we just downloaded, and then extract all data to the data_downloads folder.\n\nfilename = earthaccess.results.DataGranule.data_links(river_results[0], access='external')\nfilename = filename[0].split(\"/\")[-1]\nfilename\n\n'SWOT_L2_HR_RiverSP_Reach_007_009_NA_20231123T172635_20231123T172636_PIC0_01.zip'\n\n\n\nwith zipfile.ZipFile(f'data_downloads/{filename}', 'r') as zip_ref:\n zip_ref.extractall('data_downloads')\n\nOpen the shapefile using geopandas\n\nfilename_shp = filename.replace('.zip','.shp')\n\n\nSWOT_HR_shp1 = gpd.read_file(f'data_downloads/{filename_shp}') \n\n#view the attribute table\nSWOT_HR_shp1 \n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n71224500951\n-1.000000e+12\n-1.000000e+12\nno_data\n48.517717\n-93.692086\nRainy River\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n1480.031\n53\n244919.492\n10586.381484\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.76076 48.51651, -93.76035 48.5...\n\n\n1\n71224700013\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.777900\n-93.233350\nno_data\n3.364954e+02\n9.003000e-02\n2.290000e-03\n...\n1239358.412\n18\n3719.676\n3514.736672\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.21387 48.78466, -93.21403 48.7...\n\n\n2\n71224700021\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.772163\n-93.266891\nno_data\n3.365123e+02\n9.199000e-02\n1.902000e-02\n...\n76609.119\n8\n5305.752\n1586.075688\n-1.000000e+12\n0\n6\n1\n0\nLINESTRING (-93.25587 48.77340, -93.25628 48.7...\n\n\n3\n71224700033\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.733727\n-93.116424\nno_data\n3.365715e+02\n9.068000e-02\n1.112000e-02\n...\n297730.945\n20\n306795.237\n3904.961218\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-93.09779 48.73888, -93.09820 48.7...\n\n\n4\n71224700041\n7.540761e+08\n7.540762e+08\n2023-11-23T17:35:38Z\n48.720271\n-93.113458\nno_data\n3.364742e+02\n9.085000e-02\n1.238000e-02\n...\n0.000\n6\n302890.276\n1203.102119\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-93.12101 48.72305, -93.12060 48.7...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n926\n77125000241\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:38Z\n17.960957\n-100.025397\nno_data\n3.560650e+02\n1.501928e+02\n1.501928e+02\n...\n864.151\n70\n464330.310\n13953.442643\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-100.06409 17.97308, -100.06403 17...\n\n\n927\n77125000254\n-1.000000e+12\n-1.000000e+12\nno_data\n17.949648\n-99.995193\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n21491.314\n2\n464735.375\n405.065100\n-1.000000e+12\n10286\n1\n1\n0\nLINESTRING (-99.99547 17.95148, -99.99564 17.9...\n\n\n928\n77125000261\n7.540756e+08\n7.540756e+08\n2023-11-23T17:26:47Z\n18.362207\n-100.696472\nno_data\n2.316304e+02\n9.208000e-02\n1.946000e-02\n...\n3624.715\n56\n325106.825\n11105.124379\n-1.000000e+12\n0\n4\n1\n0\nLINESTRING (-100.68734 18.40208, -100.68723 18...\n\n\n929\n77125000263\n-1.000000e+12\n-1.000000e+12\nno_data\n17.956269\n-99.961388\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n43956.311\n49\n474450.182\n9714.807127\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.99398 17.94824, -99.99369 17.9...\n\n\n930\n77125000273\n-1.000000e+12\n-1.000000e+12\nno_data\n17.952683\n-99.906755\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n283915.163\n49\n484179.822\n9729.640027\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-99.93256 17.94746, -99.93273 17.9...\n\n\n\n\n931 rows × 127 columns\n\n\n\n\n\nQuickly plot the SWOT river data\n\n# Simple plot\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp1.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=SWOT_HR_shp1.crs, source=cx.providers.OpenTopoMap)\n\n\n\n\n\n\n\n\n\n# Another way to plot geopandas dataframes is with `explore`, which also plots a basemap\n#SWOT_HR_shp1.explore()\n\n\n\n2. Lake Vector Shapefiles\nThe lake vector shapefiles can be accessed in the same way as the river shapefiles above.\nFor additional tips on spatial searching of SWOT HR L2 data, see also PO.DAAC Cookbook - SWOT Chapter tips section.\n\n\nSearch for data of interest\n\nlake_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_LAKESP_2.0', \n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Obs*_009_NA*') # here we filter by files with 'Obs' in the name (This collection has three options: Obs, Unassigned, and Prior), pass #8 and continent code=NA\n\nGranules found: 2\n\n\nLet’s download the first data file! earthaccess.download has a list as the input format, so we need to put brackets around the single file we pass.\n\nearthaccess.download([lake_results[0]], \"./data_downloads\")\n\n Getting 1 granules, approx download size: 0.06 GB\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_HR_LakeSP_Obs_008_009_NA_20231214T141139_20231214T142322_PIC0_01.zip']\n\n\nThe native format for this data is a .zip file, and we want the .shp file within the .zip file, so we must first extract the data to open it. First, we’ll programmatically get the filename we just downloaded, and then extract all data to the SWOT_downloads folder.\n\nfilename2 = earthaccess.results.DataGranule.data_links(lake_results[0], access='external')\nfilename2 = filename2[0].split(\"/\")[-1]\nfilename2\n\n'SWOT_L2_HR_LakeSP_Obs_008_009_NA_20231214T141139_20231214T142322_PIC0_01.zip'\n\n\n\nwith zipfile.ZipFile(f'data_downloads/{filename2}', 'r') as zip_ref:\n zip_ref.extractall('data_downloads')\n\nOpen the shapefile using geopandas\n\nfilename_shp2 = filename2.replace('.zip','.shp')\nfilename_shp2\n\n'SWOT_L2_HR_LakeSP_Obs_008_009_NA_20231214T141139_20231214T142322_PIC0_01.shp'\n\n\n\nSWOT_HR_shp2 = gpd.read_file(f'data_downloads/{filename_shp2}') \n\n#view the attribute table\nSWOT_HR_shp2\n\n\n\n\n\n\n\n\nobs_id\nlake_id\noverlap\nn_overlap\nreach_id\ntime\ntime_tai\ntime_str\nwse\nwse_u\n...\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nlake_name\np_res_id\ngeometry\n\n\n\n\n0\n771190L999978\n7710050732;7710050703;7710050672;7710050662;77...\n9;86;79;70;65\n5\nno_data\n7.558783e+08\n7.558783e+08\n2023-12-14T14:12:29Z\n1888.880\n0.002\n...\n-0.016630\n-0.018661\n0.004459\n-1.865485\n-0.153819\n-0.005181\n-1.116717\nPRESA SOLS\n-99999999\nMULTIPOLYGON (((-100.49406 20.07574, -100.4938...\n\n\n1\n752199L999957\n7520013722;7520013783\n66;17\n2\nno_data\n7.558784e+08\n7.558784e+08\n2023-12-14T14:14:08Z\n156.216\n0.034\n...\n-0.014181\n-0.015942\n0.005326\n-2.293956\n-0.252575\n-0.004943\n-0.351363\nno_data\n-99999999\nMULTIPOLYGON (((-99.37239 25.63900, -99.37194 ...\n\n\n2\n752200L999987\n7520013712\n59\n1\nno_data\n7.558784e+08\n7.558784e+08\n2023-12-14T14:14:09Z\n171.336\n0.095\n...\n-0.014314\n-0.016066\n0.005341\n-2.289045\n-0.249914\n-0.004935\n-0.555793\nno_data\n-99999999\nMULTIPOLYGON (((-99.39476 25.73965, -99.39442 ...\n\n\n3\n752200L999975\n7520010832\n75\n1\nno_data\n7.558784e+08\n7.558784e+08\n2023-12-14T14:14:09Z\n173.704\n0.092\n...\n-0.014527\n-0.016270\n0.005346\n-2.288555\n-0.249523\n-0.004927\n-0.880471\nno_data\n-99999999\nMULTIPOLYGON (((-99.49457 25.75364, -99.49435 ...\n\n\n4\n752201L999995\n7520010502\n97\n1\nno_data\n7.558785e+08\n7.558785e+08\n2023-12-14T14:14:20Z\n86.140\n0.183\n...\n-0.014221\n-0.015947\n0.005429\n-2.310065\n-0.251561\n-0.004908\n-0.461625\nno_data\n-99999999\nMULTIPOLYGON (((-99.18978 26.22343, -99.18885 ...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n24067\n713255R000242\n7131518382\n98\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n8.600\n0.058\n...\n-0.003146\n-0.002480\n0.008959\n-2.268371\n-0.101818\n-0.002132\n0.371395\nno_data\n-99999999\nPOLYGON ((-88.09984 56.45882, -88.09993 56.458...\n\n\n24068\n713255R000243\n7131518562\n88\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n7.569\n0.046\n...\n-0.002484\n-0.002016\n0.011788\n-2.268953\n-0.101874\n-0.002134\n0.536599\nno_data\n-99999999\nPOLYGON ((-88.02194 56.44447, -88.02154 56.444...\n\n\n24069\n713255R000252\n7131519822\n96\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n7.010\n0.056\n...\n-0.002542\n-0.002187\n0.010853\n-2.268864\n-0.101836\n-0.002132\n0.410241\nno_data\n-99999999\nPOLYGON ((-88.07451 56.46812, -88.07396 56.467...\n\n\n24070\n713255R000253\n7131519842\n92\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n4.540\n0.118\n...\n-0.001758\n-0.001693\n0.012287\n-2.269519\n-0.101934\n-0.002135\n0.580966\nno_data\n-99999999\nPOLYGON ((-87.98967 56.45438, -87.98932 56.454...\n\n\n24071\n713255R000256\n7131524362\n61\n1\nno_data\n7.558790e+08\n7.558790e+08\n2023-12-14T14:23:21Z\n5.420\n0.108\n...\n-0.001757\n-0.001759\n0.012288\n-2.269569\n-0.101906\n-0.002133\n0.503179\nno_data\n-99999999\nPOLYGON ((-88.02147 56.47136, -88.02104 56.471...\n\n\n\n\n24072 rows × 36 columns\n\n\n\n\n\nQuickly plot the SWOT lakes data\n\nfig, ax = plt.subplots(figsize=(7,5))\nSWOT_HR_shp2.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=SWOT_HR_shp2.crs, source=cx.providers.OpenTopoMap)\n\n\n\n\n\n\n\n\nAccessing the remaining files is different than the shp files above. We do not need to extract the shapefiles from a zip file because the following SWOT HR collections are stored in netCDF files in the cloud. For the rest of the products, we will open via xarray, not geopandas.\n\n\n3. Water Mask Pixel Cloud NetCDF\n\n\nSearch for data collection and time of interest\n\npixc_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_PIXC_2.0', \n #granule_name = '*_009_*', # pass number 9 if we want to filter further\n #temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n bounding_box = (-106.62, 38.809, -106.54, 38.859)) # Lake Travis near Austin, TX\n\nGranules found: 18\n\n\nLet’s download one data file! earthaccess.download has a list as the input format, so we need to put brackets around the single file we pass.\n\nearthaccess.download([pixc_results[0]], \"./data_downloads\")\n\n Getting 1 granules, approx download size: 0.27 GB\n\n\n\n\n\n\n\n\n\n\n\n['SWOT_L2_HR_PIXC_007_106_086R_20231127T042024_20231127T042035_PIC0_03.nc']\n\n\n\n\nOpen data using xarray\nThe pixel cloud netCDF files are formatted with three groups titled, “pixel cloud”, “tvp”, or “noise” (more detail here). In order to access the coordinates and variables within the file, a group must be specified when calling xarray open_dataset.\n\nds_PIXC = xr.open_mfdataset(\"data_downloads/SWOT_L2_HR_PIXC_*.nc\", group = 'pixel_cloud', engine='h5netcdf')\nds_PIXC\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (points: 2831150, complex_depth: 2,\n num_pixc_lines: 3279)\nCoordinates:\n latitude (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\n longitude (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\nDimensions without coordinates: points, complex_depth, num_pixc_lines\nData variables: (12/61)\n azimuth_index (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\n range_index (points) float64 dask.array<chunksize=(2831150,), meta=np.ndarray>\n interferogram (points, complex_depth) float32 dask.array<chunksize=(2831150, 2), meta=np.ndarray>\n power_plus_y (points) float32 dask.array<chunksize=(2831150,), meta=np.ndarray>\n power_minus_y (points) float32 dask.array<chunksize=(2831150,), meta=np.ndarray>\n coherent_power (points) float32 dask.array<chunksize=(2831150,), meta=np.ndarray>\n ... ...\n pixc_line_qual (num_pixc_lines) float64 dask.array<chunksize=(3279,), meta=np.ndarray>\n pixc_line_to_tvp (num_pixc_lines) float32 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_first_valid (num_pixc_lines) float64 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_last_valid (num_pixc_lines) float64 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_first_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3279,), meta=np.ndarray>\n data_window_last_cross_track (num_pixc_lines) float32 dask.array<chunksize=(3279,), meta=np.ndarray>\nAttributes:\n description: cloud of geolocated interferogram pixels\n interferogram_size_azimuth: 3279\n interferogram_size_range: 5750\n looks_to_efflooks: 1.5509548020673398\n num_azimuth_looks: 7.0\n azimuth_offset: 3xarray.DatasetDimensions:points: 2831150complex_depth: 2num_pixc_lines: 3279Coordinates: (2)latitude(points)float64dask.array<chunksize=(2831150,), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northquality_flag :geolocation_qualvalid_min :-80.0valid_max :80.0comment :Geodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nlongitude\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-180.0\n\nvalid_max :\n\n180.0\n\ncomment :\n\nLongitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (61)\n\n\n\n\n\n\n\nazimuth_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram azimuth index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram azimuth index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nrange_index\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram range index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nRare interferogram range index (indexed from 0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninterferogram\n\n\n(points, complex_depth)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrare interferogram\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n-1e+20\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nComplex unflattened rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150, 2)\n(2831150, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 2831150\n\n\n\n\n\n\n\n\npower_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for plus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the plus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npower_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npower for minus_y channel\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower for the minus_y channel (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ncoherent_power\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent power combination of minus_y and plus_y channels\n\nunits :\n\n1\n\nquality_flag :\n\ninterferogram_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nPower computed by combining the plus_y and minus_y channels coherently by co-aligning the phases (arbitrary units that give sigma0 when noise subtracted and normalized by the X factor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nx_factor_plus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for plus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the plus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nx_factor_minus_y\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nX factor for minus_y channel power\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nX factor for the minus_y channel power in linear units (arbitrary units to normalize noise-subtracted power to sigma0).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nNoisy estimate of the fraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nUncertainty estimate of the water fraction estimate (width of noisy water frac estimate distribution).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nclassification\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclassification\n\nquality_flag :\n\nclassification_qual\n\nflag_meanings :\n\nland land_near_water water_near_land open_water dark_water low_coh_water_near_land open_low_coh_water\n\nflag_values :\n\n[1 2 3 4 5 6 7]\n\nvalid_min :\n\n1\n\nvalid_max :\n\n7\n\ncomment :\n\nFlags indicating water detection results.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nfalse_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfalse detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting water when there is none.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nmissed_detection_rate\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmissed detection rate\n\nunits :\n\n1\n\nquality_flag :\n\nclassification_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nProbability of falsely detecting no water when there is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nprior_water_prob\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nprior water probability\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nPrior probability of water occurring.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nbright_land_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbright land flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_bright_land bright_land bright_land_or_water\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating areas that are not typically water but are expected to be bright (e.g., urban areas, ice). Flag value 2 indicates cases where prior data indicate land, but where prior_water_prob indicates possible water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the height error caused by layover, which may not be reliable on a pixel by pixel basis, but may be useful to augment aggregated height uncertainties.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\neff_num_rare_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of rare looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken to form the rare interferogram.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nHeight of the pixel above the reference ellipsoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ncross_track\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\nunits :\n\nm\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npixel_area\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel area\n\nunits :\n\nm^2\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninc\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nphase_noise_std\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase noise standard deviation\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the phase noise standard deviation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndlatitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of latitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the latitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndlongitude_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of longitude estimate to interferogram phase\n\nunits :\n\ndegrees/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the longitude estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_dphase\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferogram phase\n\nunits :\n\nm/radian\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferogram phase.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_droll\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to spacecraft roll\n\nunits :\n\nm/degrees\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the spacecraft roll.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_dbaseline\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to interferometric baseline\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the interferometric baseline.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndheight_drange\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of height estimate to range (delay)\n\nunits :\n\nm/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the height estimate to the range (delay).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ndarea_dheight\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsensitivity of pixel area to reference height\n\nunits :\n\nm^2/m\n\nquality_flag :\n\ngeolocation_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nSensitivity of the pixel area to the reference height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(points)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\neff_num_medium_looks\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\neffective number of medium looks\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEffective number of independent looks taken in forming the medium interferogram (after adaptive averaging).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0 uncertainty\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the sig0 measurement. The value is given as an additive (not multiplicative) linear term (not a term in decibels).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nphase_unwrapping_region\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase unwrapping region index\n\nunits :\n\n1\n\nvalid_min :\n\n-1\n\nvalid_max :\n\n99999999\n\ncomment :\n\nPhase unwrapping region index.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nambiguity_cost1\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nambiguity_cost2\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nphase ambiguity 2nd minimum cost\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPhase ambiguity 2nd minimum cost.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninstrument_range_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument range correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to range before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninstrument_phase_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument phase correction\n\nunits :\n\nradians\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to phase before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninstrument_baseline_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ninstrument baseline correction\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nTerm that incorporates all calibration corrections applied to baseline before geolocation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0 and x_factor_plus_y and x_factor_minus_y.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported pixel height results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ngeoid\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npole_tide\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust). This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(points)\n\n\nfloat32\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.32 MB\n11.32 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ninterferogram_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nrare_power_suspect rare_phase_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded rare_power_bad rare_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 2048 4096 8192 16384 32768 262144 524288 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4161599488\n\ncomment :\n\nQuality flag for the interferogram quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nclassification_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_coherent_gain power_close_to_noise_floor detected_water_but_no_prior_water detected_water_but_bright_land water_false_detection_rate_suspect coherent_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded coherent_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 2048 8192 16384 32768 262144 524288 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3893159967\n\ncomment :\n\nQuality flag for the classification quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\ngeolocation_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nlayover_significant phase_noise_suspect phase_unwrapping_suspect model_dry_tropo_cor_suspect model_wet_tropo_cor_suspect iono_cor_gim_ka_suspect xovercal_suspect medium_phase_suspect tvp_suspect sc_event_suspect small_karin_gap specular_ringing_degraded model_dry_tropo_cor_missing model_wet_tropo_cor_missing iono_cor_gim_ka_missing xovercal_missing geolocation_is_from_refloc no_geolocation_bad medium_phase_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 16 32 64 4096 8192 16384 32768 524288 1048576 2097152 4194304 8388608 16777216 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4193841279\n\ncomment :\n\nQuality flag for the geolocation quantities in the pixel cloud data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(points)\n\n\nfloat64\n\n\ndask.array<chunksize=(2831150,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsig0_uncert_suspect sig0_cor_atmos_suspect noise_power_suspect xfactor_suspect rare_power_suspect tvp_suspect sc_event_suspect small_karin_gap in_air_pixel_degraded specular_ringing_degraded sig0_cor_atmos_missing noise_power_bad xfactor_bad rare_power_bad tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 2 4 8 2048 8192 16384 32768 262144 524288 1048576 33554432 67108864 134217728 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3994871823\n\ncomment :\n\nQuality flag for sig0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n22.65 MB\n22.65 MB\n\n\nShape\n(2831150,)\n(2831150,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 2831150 1\n\n\n\n\n\n\n\n\npixc_line_qual\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnot_in_tile tvp_suspect sc_event_suspect small_karin_gap tvp_bad sc_event_bad large_karin_gap\n\nflag_masks :\n\n[ 1 8192 16384 32768 536870912 1073741824 2147483649]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3758153729\n\ncomment :\n\nQuality flag for pixel cloud data per rare-posted interferogram line (similar to slc_qual in the L1B_HR_SLC product)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n26.23 kB\n26.23 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\npixc_line_to_tvp\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud rare line to tvp index\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nPixel cloud rare radar grid line index to tvp index mapping\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n13.12 kB\n13.12 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_first_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window starting index of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n26.23 kB\n26.23 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_last_valid\n\n\n(num_pixc_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending index\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nPixel cloud data window ending index of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n26.23 kB\n26.23 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_first_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window starting cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window starting cross-track distance in meters of first valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n13.12 kB\n13.12 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\n\n\ndata_window_last_cross_track\n\n\n(num_pixc_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(3279,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npixel cloud data window ending cross-track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nPixel cloud data window ending cross-track distance in meters of last valid pixel in the range direction\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n13.12 kB\n13.12 kB\n\n\nShape\n(3279,)\n(3279,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3279 1\n\n\n\n\n\n\nIndexes: (0)Attributes: (6)description :cloud of geolocated interferogram pixelsinterferogram_size_azimuth :3279interferogram_size_range :5750looks_to_efflooks :1.5509548020673398num_azimuth_looks :7.0azimuth_offset :3", "crumbs": [ "Tutorials", "Dataset Specific", @@ -3481,7 +3481,7 @@ "href": "notebooks/datasets/MUR_SST_Washington_Comparison.html", "title": "MUR Sea Surface Temperature Analysis of Washington State", "section": "", - "text": "From the PO.DAAC Cookbook, to access the GitHub version of the notebook, follow this link.\n\n\nMUR Sea Surface Temperature Analysis of Washington State\n\nRequirement:\n\nCompute environment\n\nThis tutorial can only be run in an AWS cloud instance running in us-west-2: NASA Earthdata Cloud data in S3 can be directly accessed via temporary credentials; this access is limited to requests made within the US West (Oregon) (code: us-west-2) AWS region.\n\nEarthdata Login\n\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. Please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up.\n\n\nLearning Objectives:\n\nAccess cloud-stored MUR Global SST data within AWS cloud, without downloading it to your local machine\nVisualize and analyze data in a use case example\nUse earthaccess library to search for, access, and download the data\n\n\n\nGHRSST Level 4 MUR Global Foundation Sea Surface Temperature Analysis (v4.1) Dataset:\n\nMUR-JPL-L4-GLOB-v4.1\n\n\nDOI: https://doi.org/10.5067/GHGMR-4FJ04\n\nNotebook Author: Zoë Walschots, NASA PO.DAAC (Aug 2023)\n\n\nImport Packages\n\nimport h5netcdf\nimport xarray as xr\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport hvplot.xarray\nimport cartopy.crs as ccrs\nimport cartopy.feature as cfeat\nimport earthaccess\nfrom earthaccess import Auth, DataCollections, DataGranules, Store\n\n\n\n\n\n\n\n\n\n\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login(strategy=\"interactive\", persist=True)\n\n\n\nAccess and Visualize Data\nLet’s look at the Sea Surface Temperature of first summer we have data for (2012) using earthaccess\n\nmur_results = earthaccess.search_data(short_name = 'MUR-JPL-L4-GLOB-v4.1', temporal = ('2012-05-21', '2012-08-20'), bounding_box = ('-125.41992','45.61181','-116.64844','49.2315'))\n\nGranules found: 92\n\n\n\nds_mur = xr.open_mfdataset(earthaccess.open(mur_results), engine = 'h5netcdf')\nds_mur\n\n Opening 92 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 92, lat: 17999, lon: 36000)\nCoordinates:\n * time (time) datetime64[ns] 2012-05-21T09:00:00 ... 2012-08-2...\n * lat (lat) float32 -89.99 -89.98 -89.97 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\nData variables:\n analysed_sst (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n analysis_error (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n mask (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n sea_ice_fraction (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\nAttributes: (12/47)\n Conventions: CF-1.5\n title: Daily MUR SST, Final product\n summary: A merged, multi-sensor L4 Foundation SST anal...\n references: http://podaac.jpl.nasa.gov/Multi-scale_Ultra-...\n institution: Jet Propulsion Laboratory\n history: created at nominal 4-day latency; replaced nr...\n ... ...\n project: NASA Making Earth Science Data Records for Us...\n publisher_name: GHRSST Project Office\n publisher_url: http://www.ghrsst.org\n publisher_email: ghrsst-po@nceo.ac.uk\n processing_level: L4\n cdm_data_type: gridxarray.DatasetDimensions:time: 92lat: 17999lon: 36000Coordinates: (3)time(time)datetime64[ns]2012-05-21T09:00:00 ... 2012-08-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2012-05-21T09:00:00.000000000', '2012-05-22T09:00:00.000000000',\n '2012-05-23T09:00:00.000000000', '2012-05-24T09:00:00.000000000',\n '2012-05-25T09:00:00.000000000', '2012-05-26T09:00:00.000000000',\n '2012-05-27T09:00:00.000000000', '2012-05-28T09:00:00.000000000',\n '2012-05-29T09:00:00.000000000', '2012-05-30T09:00:00.000000000',\n '2012-05-31T09:00:00.000000000', '2012-06-01T09:00:00.000000000',\n '2012-06-02T09:00:00.000000000', '2012-06-03T09:00:00.000000000',\n '2012-06-04T09:00:00.000000000', '2012-06-05T09:00:00.000000000',\n '2012-06-06T09:00:00.000000000', '2012-06-07T09:00:00.000000000',\n '2012-06-08T09:00:00.000000000', '2012-06-09T09:00:00.000000000',\n '2012-06-10T09:00:00.000000000', '2012-06-11T09:00:00.000000000',\n '2012-06-12T09:00:00.000000000', '2012-06-13T09:00:00.000000000',\n '2012-06-14T09:00:00.000000000', '2012-06-15T09:00:00.000000000',\n '2012-06-16T09:00:00.000000000', '2012-06-17T09:00:00.000000000',\n '2012-06-18T09:00:00.000000000', '2012-06-19T09:00:00.000000000',\n '2012-06-20T09:00:00.000000000', '2012-06-21T09:00:00.000000000',\n '2012-06-22T09:00:00.000000000', '2012-06-23T09:00:00.000000000',\n '2012-06-24T09:00:00.000000000', '2012-06-25T09:00:00.000000000',\n '2012-06-26T09:00:00.000000000', '2012-06-27T09:00:00.000000000',\n '2012-06-28T09:00:00.000000000', '2012-06-29T09:00:00.000000000',\n '2012-06-30T09:00:00.000000000', '2012-07-01T09:00:00.000000000',\n '2012-07-02T09:00:00.000000000', '2012-07-03T09:00:00.000000000',\n '2012-07-04T09:00:00.000000000', '2012-07-05T09:00:00.000000000',\n '2012-07-06T09:00:00.000000000', '2012-07-07T09:00:00.000000000',\n '2012-07-08T09:00:00.000000000', '2012-07-09T09:00:00.000000000',\n '2012-07-10T09:00:00.000000000', '2012-07-11T09:00:00.000000000',\n '2012-07-12T09:00:00.000000000', '2012-07-13T09:00:00.000000000',\n '2012-07-14T09:00:00.000000000', '2012-07-15T09:00:00.000000000',\n '2012-07-16T09:00:00.000000000', '2012-07-17T09:00:00.000000000',\n '2012-07-18T09:00:00.000000000', '2012-07-19T09:00:00.000000000',\n '2012-07-20T09:00:00.000000000', '2012-07-21T09:00:00.000000000',\n '2012-07-22T09:00:00.000000000', '2012-07-23T09:00:00.000000000',\n '2012-07-24T09:00:00.000000000', '2012-07-25T09:00:00.000000000',\n '2012-07-26T09:00:00.000000000', '2012-07-27T09:00:00.000000000',\n '2012-07-28T09:00:00.000000000', '2012-07-29T09:00:00.000000000',\n '2012-07-30T09:00:00.000000000', '2012-07-31T09:00:00.000000000',\n '2012-08-01T09:00:00.000000000', '2012-08-02T09:00:00.000000000',\n '2012-08-03T09:00:00.000000000', '2012-08-04T09:00:00.000000000',\n '2012-08-05T09:00:00.000000000', '2012-08-06T09:00:00.000000000',\n '2012-08-07T09:00:00.000000000', '2012-08-08T09:00:00.000000000',\n '2012-08-09T09:00:00.000000000', '2012-08-10T09:00:00.000000000',\n '2012-08-11T09:00:00.000000000', '2012-08-12T09:00:00.000000000',\n '2012-08-13T09:00:00.000000000', '2012-08-14T09:00:00.000000000',\n '2012-08-15T09:00:00.000000000', '2012-08-16T09:00:00.000000000',\n '2012-08-17T09:00:00.000000000', '2012-08-18T09:00:00.000000000',\n '2012-08-19T09:00:00.000000000', '2012-08-20T09:00:00.000000000'],\n dtype='datetime64[ns]')lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :nonearray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :nonearray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)Data variables: (4)analysed_sst(time, lat, lon)float32dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :AVHRR18_G-NAVO, AVHRR19_G-NAVO, AVHRR_METOP_A-EUMETSAT, MODIS_A-JPL, MODIS_T-JPL, WSAT-REMSS, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\n\n\n\nanalysis_error\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated error standard deviation of analysed_sst\n\nunits :\n\nkelvin\n\nvalid_min :\n\n0\n\nvalid_max :\n\n32767\n\ncomment :\n\nnone\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\n\n\n\nmask\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea/land field composite mask\n\nvalid_min :\n\n1\n\nvalid_max :\n\n31\n\nflag_masks :\n\n[ 1 2 4 8 16]\n\nflag_values :\n\n[ 1 2 5 9 13]\n\nflag_meanings :\n\n1=open-sea, 2=land, 5=open-lake, 9=open-sea with ice in the grid, 13=open-lake with ice in the grid\n\ncomment :\n\nmask can be used to further filter the data.\n\nsource :\n\nGMT \"grdlandmask\", ice flag from sea_ice_fraction data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\n\n\n\nsea_ice_fraction\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea ice area fraction\n\nstandard_name :\n\nsea ice area fraction\n\nunits :\n\nfraction (between 0 and 1)\n\nvalid_min :\n\n0\n\nvalid_max :\n\n100\n\nsource :\n\nEUMETSAT OSI-SAF, copyright EUMETSAT\n\ncomment :\n\nice data interpolated by a nearest neighbor approach.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\nIndexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2012-05-21 09:00:00', '2012-05-22 09:00:00',\n '2012-05-23 09:00:00', '2012-05-24 09:00:00',\n '2012-05-25 09:00:00', '2012-05-26 09:00:00',\n '2012-05-27 09:00:00', '2012-05-28 09:00:00',\n '2012-05-29 09:00:00', '2012-05-30 09:00:00',\n '2012-05-31 09:00:00', '2012-06-01 09:00:00',\n '2012-06-02 09:00:00', '2012-06-03 09:00:00',\n '2012-06-04 09:00:00', '2012-06-05 09:00:00',\n '2012-06-06 09:00:00', '2012-06-07 09:00:00',\n '2012-06-08 09:00:00', '2012-06-09 09:00:00',\n '2012-06-10 09:00:00', '2012-06-11 09:00:00',\n '2012-06-12 09:00:00', '2012-06-13 09:00:00',\n '2012-06-14 09:00:00', '2012-06-15 09:00:00',\n '2012-06-16 09:00:00', '2012-06-17 09:00:00',\n '2012-06-18 09:00:00', '2012-06-19 09:00:00',\n '2012-06-20 09:00:00', '2012-06-21 09:00:00',\n '2012-06-22 09:00:00', '2012-06-23 09:00:00',\n '2012-06-24 09:00:00', '2012-06-25 09:00:00',\n '2012-06-26 09:00:00', '2012-06-27 09:00:00',\n '2012-06-28 09:00:00', '2012-06-29 09:00:00',\n '2012-06-30 09:00:00', '2012-07-01 09:00:00',\n '2012-07-02 09:00:00', '2012-07-03 09:00:00',\n '2012-07-04 09:00:00', '2012-07-05 09:00:00',\n '2012-07-06 09:00:00', '2012-07-07 09:00:00',\n '2012-07-08 09:00:00', '2012-07-09 09:00:00',\n '2012-07-10 09:00:00', '2012-07-11 09:00:00',\n '2012-07-12 09:00:00', '2012-07-13 09:00:00',\n '2012-07-14 09:00:00', '2012-07-15 09:00:00',\n '2012-07-16 09:00:00', '2012-07-17 09:00:00',\n '2012-07-18 09:00:00', '2012-07-19 09:00:00',\n '2012-07-20 09:00:00', '2012-07-21 09:00:00',\n '2012-07-22 09:00:00', '2012-07-23 09:00:00',\n '2012-07-24 09:00:00', '2012-07-25 09:00:00',\n '2012-07-26 09:00:00', '2012-07-27 09:00:00',\n '2012-07-28 09:00:00', '2012-07-29 09:00:00',\n '2012-07-30 09:00:00', '2012-07-31 09:00:00',\n '2012-08-01 09:00:00', '2012-08-02 09:00:00',\n '2012-08-03 09:00:00', '2012-08-04 09:00:00',\n '2012-08-05 09:00:00', '2012-08-06 09:00:00',\n '2012-08-07 09:00:00', '2012-08-08 09:00:00',\n '2012-08-09 09:00:00', '2012-08-10 09:00:00',\n '2012-08-11 09:00:00', '2012-08-12 09:00:00',\n '2012-08-13 09:00:00', '2012-08-14 09:00:00',\n '2012-08-15 09:00:00', '2012-08-16 09:00:00',\n '2012-08-17 09:00:00', '2012-08-18 09:00:00',\n '2012-08-19 09:00:00', '2012-08-20 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))latPandasIndexPandasIndex(Index([-89.98999786376953, -89.9800033569336, -89.97000122070312,\n -89.95999908447266, -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531, -89.91000366210938,\n -89.9000015258789,\n ...\n 89.9000015258789, 89.91000366210938, 89.91999816894531,\n 89.93000030517578, 89.94000244140625, 89.94999694824219,\n 89.95999908447266, 89.97000122070312, 89.9800033569336,\n 89.98999786376953],\n dtype='float32', name='lat', length=17999))lonPandasIndexPandasIndex(Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n 179.91000366210938, 179.9199981689453, 179.92999267578125,\n 179.94000244140625, 179.9499969482422, 179.9600067138672,\n 179.97000122070312, 179.97999572753906, 179.99000549316406,\n 180.0],\n dtype='float32', name='lon', length=36000))Attributes: (47)Conventions :CF-1.5title :Daily MUR SST, Final productsummary :A merged, multi-sensor L4 Foundation SST analysis product from JPL.references :http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SSTinstitution :Jet Propulsion Laboratoryhistory :created at nominal 4-day latency; replaced nrt (1-day latency) version.comment :MUR = \"Multi-scale Ultra-high Reolution\"license :These data are available free of charge under data policy of JPL PO.DAAC.id :MUR-JPL-L4-GLOB-v04.1naming_authority :org.ghrsstproduct_version :04.1uuid :27665bc0-d5fc-11e1-9b23-0800200c9a66gds_version_id :2.0netcdf_version_id :4.1date_created :20150711T060041Zstart_time :20120521T090000Zstop_time :20120521T090000Ztime_coverage_start :20120520T210000Ztime_coverage_end :20120521T210000Zfile_quality_level :1source :AVHRR18_G-NAVO, AVHRR19_G-NAVO, AVHRR_METOP_A-EUMETSAT, MODIS_A-JPL, MODIS_T-JPL, WSAT-REMSS, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAFplatform :Aqua, DMSP, NOAA-POES, Suomi-NPP, Terrasensor :AMSR-E, AVHRR, MODIS, SSM/I, VIIRS, in-situMetadata_Conventions :Unidata Observation Dataset v1.0metadata_link :http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1keywords :Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsouthernmost_latitude :-90.0northernmost_latitude :90.0westernmost_longitude :-180.0easternmost_longitude :180.0spatial_resolution :0.01 degreesgeospatial_lat_units :degrees northgeospatial_lat_resolution :0.01 degreesgeospatial_lon_units :degrees eastgeospatial_lon_resolution :0.01 degreesacknowledgment :Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.creator_name :JPL MUR SST projectcreator_email :ghrsst@podaac.jpl.nasa.govcreator_url :http://mur.jpl.nasa.govproject :NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Programpublisher_name :GHRSST Project Officepublisher_url :http://www.ghrsst.orgpublisher_email :ghrsst-po@nceo.ac.ukprocessing_level :L4cdm_data_type :grid", + "text": "From the PO.DAAC Cookbook, to access the GitHub version of the notebook, follow this link.\n\n\nMUR Sea Surface Temperature Analysis of Washington State\n\nRequirement:\n\nCompute environment\n\nThis tutorial can only be run in an AWS cloud instance running in us-west-2: NASA Earthdata Cloud data in S3 can be directly accessed via temporary credentials; this access is limited to requests made within the US West (Oregon) (code: us-west-2) AWS region.\n\nEarthdata Login\n\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. Please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up.\n\n\nLearning Objectives:\n\nAccess cloud-stored MUR Global SST data within AWS cloud, without downloading it to your local machine\nVisualize and analyze data in a use case example\nUse earthaccess library to search for, access, and download the data\n\n\n\nGHRSST Level 4 MUR Global Foundation Sea Surface Temperature Analysis (v4.1) Dataset:\n\nMUR-JPL-L4-GLOB-v4.1\n\n\nDOI: https://doi.org/10.5067/GHGMR-4FJ04\n\nNotebook Author: Zoë Walschots, NASA PO.DAAC (Aug 2023)\n\n\nImport Packages\n\nimport h5netcdf\nimport xarray as xr\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport hvplot.xarray\nimport cartopy.crs as ccrs\nimport cartopy.feature as cfeat\nimport earthaccess\nfrom earthaccess import Auth, DataCollections, DataGranules, Store\n\n\n\n\n\n\n\n\n\n\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login(strategy=\"interactive\", persist=True)\n\n\n\nAccess and Visualize Data\nLet’s look at the Sea Surface Temperature of first summer we have data for (2012) using earthaccess\n\nmur_results = earthaccess.search_data(short_name = 'MUR-JPL-L4-GLOB-v4.1', temporal = ('2012-05-21', '2012-08-20'), bounding_box = ('-125.41992','45.61181','-116.64844','49.2315'))\n\nGranules found: 92\n\n\n\nds_mur = xr.open_mfdataset(earthaccess.open(mur_results), engine = 'h5netcdf')\nds_mur\n\n Opening 92 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 92, lat: 17999, lon: 36000)\nCoordinates:\n * time (time) datetime64[ns] 2012-05-21T09:00:00 ... 2012-08-2...\n * lat (lat) float32 -89.99 -89.98 -89.97 ... 89.97 89.98 89.99\n * lon (lon) float32 -180.0 -180.0 -180.0 ... 180.0 180.0 180.0\nData variables:\n analysed_sst (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n analysis_error (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n mask (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n sea_ice_fraction (time, lat, lon) float32 dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\nAttributes: (12/47)\n Conventions: CF-1.5\n title: Daily MUR SST, Final product\n summary: A merged, multi-sensor L4 Foundation SST anal...\n references: http://podaac.jpl.nasa.gov/Multi-scale_Ultra-...\n institution: Jet Propulsion Laboratory\n history: created at nominal 4-day latency; replaced nr...\n ... ...\n project: NASA Making Earth Science Data Records for Us...\n publisher_name: GHRSST Project Office\n publisher_url: http://www.ghrsst.org\n publisher_email: ghrsst-po@nceo.ac.uk\n processing_level: L4\n cdm_data_type: gridxarray.DatasetDimensions:time: 92lat: 17999lon: 36000Coordinates: (3)time(time)datetime64[ns]2012-05-21T09:00:00 ... 2012-08-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsarray(['2012-05-21T09:00:00.000000000', '2012-05-22T09:00:00.000000000',\n '2012-05-23T09:00:00.000000000', '2012-05-24T09:00:00.000000000',\n '2012-05-25T09:00:00.000000000', '2012-05-26T09:00:00.000000000',\n '2012-05-27T09:00:00.000000000', '2012-05-28T09:00:00.000000000',\n '2012-05-29T09:00:00.000000000', '2012-05-30T09:00:00.000000000',\n '2012-05-31T09:00:00.000000000', '2012-06-01T09:00:00.000000000',\n '2012-06-02T09:00:00.000000000', '2012-06-03T09:00:00.000000000',\n '2012-06-04T09:00:00.000000000', '2012-06-05T09:00:00.000000000',\n '2012-06-06T09:00:00.000000000', '2012-06-07T09:00:00.000000000',\n '2012-06-08T09:00:00.000000000', '2012-06-09T09:00:00.000000000',\n '2012-06-10T09:00:00.000000000', '2012-06-11T09:00:00.000000000',\n '2012-06-12T09:00:00.000000000', '2012-06-13T09:00:00.000000000',\n '2012-06-14T09:00:00.000000000', '2012-06-15T09:00:00.000000000',\n '2012-06-16T09:00:00.000000000', '2012-06-17T09:00:00.000000000',\n '2012-06-18T09:00:00.000000000', '2012-06-19T09:00:00.000000000',\n '2012-06-20T09:00:00.000000000', '2012-06-21T09:00:00.000000000',\n '2012-06-22T09:00:00.000000000', '2012-06-23T09:00:00.000000000',\n '2012-06-24T09:00:00.000000000', '2012-06-25T09:00:00.000000000',\n '2012-06-26T09:00:00.000000000', '2012-06-27T09:00:00.000000000',\n '2012-06-28T09:00:00.000000000', '2012-06-29T09:00:00.000000000',\n '2012-06-30T09:00:00.000000000', '2012-07-01T09:00:00.000000000',\n '2012-07-02T09:00:00.000000000', '2012-07-03T09:00:00.000000000',\n '2012-07-04T09:00:00.000000000', '2012-07-05T09:00:00.000000000',\n '2012-07-06T09:00:00.000000000', '2012-07-07T09:00:00.000000000',\n '2012-07-08T09:00:00.000000000', '2012-07-09T09:00:00.000000000',\n '2012-07-10T09:00:00.000000000', '2012-07-11T09:00:00.000000000',\n '2012-07-12T09:00:00.000000000', '2012-07-13T09:00:00.000000000',\n '2012-07-14T09:00:00.000000000', '2012-07-15T09:00:00.000000000',\n '2012-07-16T09:00:00.000000000', '2012-07-17T09:00:00.000000000',\n '2012-07-18T09:00:00.000000000', '2012-07-19T09:00:00.000000000',\n '2012-07-20T09:00:00.000000000', '2012-07-21T09:00:00.000000000',\n '2012-07-22T09:00:00.000000000', '2012-07-23T09:00:00.000000000',\n '2012-07-24T09:00:00.000000000', '2012-07-25T09:00:00.000000000',\n '2012-07-26T09:00:00.000000000', '2012-07-27T09:00:00.000000000',\n '2012-07-28T09:00:00.000000000', '2012-07-29T09:00:00.000000000',\n '2012-07-30T09:00:00.000000000', '2012-07-31T09:00:00.000000000',\n '2012-08-01T09:00:00.000000000', '2012-08-02T09:00:00.000000000',\n '2012-08-03T09:00:00.000000000', '2012-08-04T09:00:00.000000000',\n '2012-08-05T09:00:00.000000000', '2012-08-06T09:00:00.000000000',\n '2012-08-07T09:00:00.000000000', '2012-08-08T09:00:00.000000000',\n '2012-08-09T09:00:00.000000000', '2012-08-10T09:00:00.000000000',\n '2012-08-11T09:00:00.000000000', '2012-08-12T09:00:00.000000000',\n '2012-08-13T09:00:00.000000000', '2012-08-14T09:00:00.000000000',\n '2012-08-15T09:00:00.000000000', '2012-08-16T09:00:00.000000000',\n '2012-08-17T09:00:00.000000000', '2012-08-18T09:00:00.000000000',\n '2012-08-19T09:00:00.000000000', '2012-08-20T09:00:00.000000000'],\n dtype='datetime64[ns]')lat(lat)float32-89.99 -89.98 ... 89.98 89.99long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :nonearray([-89.99, -89.98, -89.97, ..., 89.97, 89.98, 89.99], dtype=float32)lon(lon)float32-180.0 -180.0 ... 180.0 180.0long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :nonearray([-179.99, -179.98, -179.97, ..., 179.98, 179.99, 180. ],\n dtype=float32)Data variables: (4)analysed_sst(time, lat, lon)float32dask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\"Final\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :AVHRR18_G-NAVO, AVHRR19_G-NAVO, AVHRR_METOP_A-EUMETSAT, MODIS_A-JPL, MODIS_T-JPL, WSAT-REMSS, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAF\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\n\n\n\nanalysis_error\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated error standard deviation of analysed_sst\n\nunits :\n\nkelvin\n\nvalid_min :\n\n0\n\nvalid_max :\n\n32767\n\ncomment :\n\nnone\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\n\n\n\nmask\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea/land field composite mask\n\nvalid_min :\n\n1\n\nvalid_max :\n\n31\n\nflag_masks :\n\n[ 1 2 4 8 16]\n\nflag_values :\n\n[ 1 2 5 9 13]\n\nflag_meanings :\n\n1=open-sea, 2=land, 5=open-lake, 9=open-sea with ice in the grid, 13=open-lake with ice in the grid\n\ncomment :\n\nmask can be used to further filter the data.\n\nsource :\n\nGMT \"grdlandmask\", ice flag from sea_ice_fraction data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\n\n\n\nsea_ice_fraction\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 17999, 36000), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea ice area fraction\n\nstandard_name :\n\nsea ice area fraction\n\nunits :\n\nfraction (between 0 and 1)\n\nvalid_min :\n\n0\n\nvalid_max :\n\n100\n\nsource :\n\nEUMETSAT OSI-SAF, copyright EUMETSAT\n\ncomment :\n\nice data interpolated by a nearest neighbor approach.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n222.07 GiB\n2.41 GiB\n\n\nShape\n(92, 17999, 36000)\n(1, 17999, 36000)\n\n\nDask graph\n92 chunks in 185 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 36000 17999 92\n\n\n\n\n\nIndexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2012-05-21 09:00:00', '2012-05-22 09:00:00',\n '2012-05-23 09:00:00', '2012-05-24 09:00:00',\n '2012-05-25 09:00:00', '2012-05-26 09:00:00',\n '2012-05-27 09:00:00', '2012-05-28 09:00:00',\n '2012-05-29 09:00:00', '2012-05-30 09:00:00',\n '2012-05-31 09:00:00', '2012-06-01 09:00:00',\n '2012-06-02 09:00:00', '2012-06-03 09:00:00',\n '2012-06-04 09:00:00', '2012-06-05 09:00:00',\n '2012-06-06 09:00:00', '2012-06-07 09:00:00',\n '2012-06-08 09:00:00', '2012-06-09 09:00:00',\n '2012-06-10 09:00:00', '2012-06-11 09:00:00',\n '2012-06-12 09:00:00', '2012-06-13 09:00:00',\n '2012-06-14 09:00:00', '2012-06-15 09:00:00',\n '2012-06-16 09:00:00', '2012-06-17 09:00:00',\n '2012-06-18 09:00:00', '2012-06-19 09:00:00',\n '2012-06-20 09:00:00', '2012-06-21 09:00:00',\n '2012-06-22 09:00:00', '2012-06-23 09:00:00',\n '2012-06-24 09:00:00', '2012-06-25 09:00:00',\n '2012-06-26 09:00:00', '2012-06-27 09:00:00',\n '2012-06-28 09:00:00', '2012-06-29 09:00:00',\n '2012-06-30 09:00:00', '2012-07-01 09:00:00',\n '2012-07-02 09:00:00', '2012-07-03 09:00:00',\n '2012-07-04 09:00:00', '2012-07-05 09:00:00',\n '2012-07-06 09:00:00', '2012-07-07 09:00:00',\n '2012-07-08 09:00:00', '2012-07-09 09:00:00',\n '2012-07-10 09:00:00', '2012-07-11 09:00:00',\n '2012-07-12 09:00:00', '2012-07-13 09:00:00',\n '2012-07-14 09:00:00', '2012-07-15 09:00:00',\n '2012-07-16 09:00:00', '2012-07-17 09:00:00',\n '2012-07-18 09:00:00', '2012-07-19 09:00:00',\n '2012-07-20 09:00:00', '2012-07-21 09:00:00',\n '2012-07-22 09:00:00', '2012-07-23 09:00:00',\n '2012-07-24 09:00:00', '2012-07-25 09:00:00',\n '2012-07-26 09:00:00', '2012-07-27 09:00:00',\n '2012-07-28 09:00:00', '2012-07-29 09:00:00',\n '2012-07-30 09:00:00', '2012-07-31 09:00:00',\n '2012-08-01 09:00:00', '2012-08-02 09:00:00',\n '2012-08-03 09:00:00', '2012-08-04 09:00:00',\n '2012-08-05 09:00:00', '2012-08-06 09:00:00',\n '2012-08-07 09:00:00', '2012-08-08 09:00:00',\n '2012-08-09 09:00:00', '2012-08-10 09:00:00',\n '2012-08-11 09:00:00', '2012-08-12 09:00:00',\n '2012-08-13 09:00:00', '2012-08-14 09:00:00',\n '2012-08-15 09:00:00', '2012-08-16 09:00:00',\n '2012-08-17 09:00:00', '2012-08-18 09:00:00',\n '2012-08-19 09:00:00', '2012-08-20 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))latPandasIndexPandasIndex(Index([-89.98999786376953, -89.9800033569336, -89.97000122070312,\n -89.95999908447266, -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531, -89.91000366210938,\n -89.9000015258789,\n ...\n 89.9000015258789, 89.91000366210938, 89.91999816894531,\n 89.93000030517578, 89.94000244140625, 89.94999694824219,\n 89.95999908447266, 89.97000122070312, 89.9800033569336,\n 89.98999786376953],\n dtype='float32', name='lat', length=17999))lonPandasIndexPandasIndex(Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n 179.91000366210938, 179.9199981689453, 179.92999267578125,\n 179.94000244140625, 179.9499969482422, 179.9600067138672,\n 179.97000122070312, 179.97999572753906, 179.99000549316406,\n 180.0],\n dtype='float32', name='lon', length=36000))Attributes: (47)Conventions :CF-1.5title :Daily MUR SST, Final productsummary :A merged, multi-sensor L4 Foundation SST analysis product from JPL.references :http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SSTinstitution :Jet Propulsion Laboratoryhistory :created at nominal 4-day latency; replaced nrt (1-day latency) version.comment :MUR = \"Multi-scale Ultra-high Reolution\"license :These data are available free of charge under data policy of JPL PO.DAAC.id :MUR-JPL-L4-GLOB-v04.1naming_authority :org.ghrsstproduct_version :04.1uuid :27665bc0-d5fc-11e1-9b23-0800200c9a66gds_version_id :2.0netcdf_version_id :4.1date_created :20150711T060041Zstart_time :20120521T090000Zstop_time :20120521T090000Ztime_coverage_start :20120520T210000Ztime_coverage_end :20120521T210000Zfile_quality_level :1source :AVHRR18_G-NAVO, AVHRR19_G-NAVO, AVHRR_METOP_A-EUMETSAT, MODIS_A-JPL, MODIS_T-JPL, WSAT-REMSS, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAFplatform :Aqua, DMSP, NOAA-POES, Suomi-NPP, Terrasensor :AMSR-E, AVHRR, MODIS, SSM/I, VIIRS, in-situMetadata_Conventions :Unidata Observation Dataset v1.0metadata_link :http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1keywords :Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsouthernmost_latitude :-90.0northernmost_latitude :90.0westernmost_longitude :-180.0easternmost_longitude :180.0spatial_resolution :0.01 degreesgeospatial_lat_units :degrees northgeospatial_lat_resolution :0.01 degreesgeospatial_lon_units :degrees eastgeospatial_lon_resolution :0.01 degreesacknowledgment :Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.creator_name :JPL MUR SST projectcreator_email :ghrsst@podaac.jpl.nasa.govcreator_url :http://mur.jpl.nasa.govproject :NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Programpublisher_name :GHRSST Project Officepublisher_url :http://www.ghrsst.orgpublisher_email :ghrsst-po@nceo.ac.ukprocessing_level :L4cdm_data_type :grid", "crumbs": [ "Tutorials", "Dataset Specific", @@ -3494,7 +3494,7 @@ "href": "notebooks/datasets/SWOT_quality_flag_demo.html#use-earthaccess-to-search-swot-data", "title": "SWOT Quality Flag Demonstration", "section": "Use earthaccess to search SWOT data", - "text": "Use earthaccess to search SWOT data\nHere we use the SSH shortname, SWOT_L2_LR_SSH_Expert_2.0\n\nssh_results = earthaccess.search_data(short_name = 'SWOT_L2_LR_SSH_Expert_2.0', \n temporal = (\"2024-03-22 00:00:00\", \"2024-03-22 23:59:59\"))#,\n #granule_name = '*_Expert_012_455*') #if you know what cycle and pass you want, you can be more specific\n\nGranules found: 29\n\n\n\nIf accessing via Local Machine\n\n# If you are on a local machine, download the first file to your local computer\nearthaccess.download(ssh_results[0], \"./data_downloads/SWOT_files\")\n\n Getting 1 granules, approx download size: 0.03 GB\n\n\n\n\n\n\n\n\n\n\n\n['data_downloads\\\\SWOT_files\\\\SWOT_L2_LR_SSH_Expert_012_428_20240321T235733_20240322T004901_PIC0_01.nc']\n\n\n\n# Open via xarray\nds = xr.open_mfdataset(\"./data_downloads/SWOT_files/SWOT_L2_LR_SSH_Expert*.nc\")#, mask_and_scale=False)\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (num_lines: 9866, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n latitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n longitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n time (num_lines) datetime64[ns] dask.array<chunksize=(9866,), meta=np.ndarray>\n time_tai (num_lines) datetime64[ns] dask.array<chunksize=(9866,), meta=np.ndarray>\n ssh_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_qual (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssha_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ... ...\n swh_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n swh_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n title: Level 2 Low Rate Sea Surfa...\n institution: CNES\n source: Ka-band radar interferometer\n history: 2024-03-24T22:39:40Z : Cre...\n platform: SWOT\n ... ...\n ellipsoid_semi_major_axis: 6378137.0\n ellipsoid_flattening: 0.0033528106647474805\n good_ocean_data_percent: 67.62656103685167\n ssha_variance: 0.7787372594877449\n references: V1.2.1\n equator_longitude: 52.58xarray.DatasetDimensions:num_lines: 9866num_pixels: 69num_sides: 2Coordinates: (4)latitude(num_lines, num_pixels)float64dask.array<chunksize=(9866, 69), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_min :-80000000valid_max :80000000comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nlongitude\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\ntime\n\n\n(num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4212113375\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n60000\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4279222239\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809460191\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_2_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3876569055\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n157.86 kB\n157.86 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nobject\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nquality_flag :\n\nswh_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 32 128 256 512 1024 2048 4096 8192 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809361848\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n25000\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862815\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427359\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862808\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427352\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n289\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from wave model\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ndegree\n\nvalid_min :\n\n0\n\nvalid_max :\n\n36000\n\ncomment :\n\nMean sea surface wave direction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nt02 mean wave period\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ns\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nu component of model wind\n\nstandard_name :\n\neastward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nv component of model wind\n\nstandard_name :\n\nnorthward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from radiometer\n\nstandard_name :\n\nwind_speed\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm/s\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-21000\n\nvalid_max :\n\n21000\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n35999\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000000000\n\ncomment :\n\nAltitude of the KMSF origin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_min :\n\n-3500\n\nvalid_max :\n\n3500\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n39.46 kB\n39.46 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[ 0 4 5 6 7 8 64]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n64\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n39.46 kB\n39.46 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nx_factor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n15000\n\nvalid_max :\n\n28000\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater vapor content from radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nliquid water content from radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ngeoid\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nMean dynamic topography above the geoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n10000\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n10000\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\npole_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndac\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n12000\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n-15000\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-5000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from crossover calibration\n\nunits :\n\nm\n\nquality_flag :\n\nheight_cor_xover_qual\n\nvalid_min :\n\n-100000\n\nvalid_max :\n\n100000\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nmm/hr\n\nvalid_min :\n\n0\n\nvalid_max :\n\n200\n\ncomment :\n\nRain rate from weather model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nice_conc\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nconcentration of sea ice\n\nstandard_name :\n\nsea_ice_area_fraction\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nunits :\n\n%\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nConcentration of sea ice from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n20000\n\ncomment :\n\nVolumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\nIndexes: (0)Attributes: (62)Conventions :CF-1.7title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Waveinstitution :CNESsource :Ka-band radar interferometerhistory :2024-03-24T22:39:40Z : Creationplatform :SWOTreference_document :D-56407_SWOT_Product_Description_L2_LR_SSHcontact :podaac@jpl.nasa.govcycle_number :12pass_number :428equator_time :2024-03-22T00:23:15.167000Zshort_name :L2_LR_SSHproduct_file_id :Expertcrid :PIC0product_version :01pge_name :PGE_L2_LR_SSHpge_version :5.0.2time_coverage_start :2024-03-21T23:57:33.259925time_coverage_end :2024-03-22T00:49:01.265518geospatial_lon_min :328.86312899999996geospatial_lon_max :136.307662geospatial_lat_min :-78.271942geospatial_lat_max :78.27206799999999left_first_longitude :328.86312899999996left_first_latitude :78.27200599999999left_last_longitude :136.288291left_last_latitude :-77.05370099999999right_first_longitude :328.880955right_first_latitude :77.053837right_last_longitude :136.307662right_last_latitude :-78.27186999999999wavelength :0.008385803020979021transmit_antenna :minus_yxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_012_428_20240321T235729_20240322T004904_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP012_427_20240321_230606_20240321_235733.nc, SWOT_IPN_2PfP012_428_20240321_235733_20240322_004900.nc, SWOT_IPN_2PfP012_429_20240322_004900_20240322_014027.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP012_427_20240321_230603_20240321_235737_PIC0_01.nc, SWOT_IPRAD_2PaP012_428_20240321_235729_20240322_004904_PIC0_01.nc, SWOT_IPRAD_2PaP012_429_20240322_004856_20240322_014031_PIC0_01.ncxref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20240321T235723_20240322T235815_PIC0_01.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20240323_105038_20240321_225923_20240323_005923.ncxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_PMA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_PMA_AXVCNE20240322_163941_20240322_060000_20240322_060000xref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_WEA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_WEA_AXVCNE20240322_163941_20240322_060000_20240322_060000xref_meteorological_wind_files :SMM_VWA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_UWA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_VWA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_UWA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_UWA_AXVCNE20240322_163941_20240322_060000_20240322_060000, SMM_VWA_AXVCNE20240322_163941_20240322_060000_20240322_060000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20240322_054027_20240321_180000_20240321_180000, SMM_PSA_AXVCNE20240322_054027_20240322_000000_20240322_000000, SMM_PSA_AXVCNE20240322_174027_20240322_060000_20240322_060000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_T2M_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_T2M_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_CWV_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_CWV_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_CLW_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_CLW_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_model_significant_wave_height_files :SMM_SWH_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_SWH_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_SWH_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_gim_files :JPLQ0810.24I, JPLQ0820.24Ixref_pole_location_file :SMM_PO1_AXXCNE20240324_020000_19900101_000000_20240920_000000xref_dac_files :SMM_MOG_AXPCNE20240322_074502_20240321_180000_20240321_180000, SMM_MOG_AXPCNE20240322_074502_20240322_000000_20240322_000000, SMM_MOG_AXPCNE20240322_203000_20240322_060000_20240322_060000xref_precipitation_files :SMM_LSR_AXFCNE20240321_185544_20240321_180000_20240321_180000.grb, SMM_CRR_AXFCNE20240321_185544_20240321_180000_20240321_180000.grb, SMM_CRR_AXFCNE20240322_065522_20240322_000000_20240322_000000.grb, SMM_LSR_AXFCNE20240322_065522_20240322_000000_20240322_000000.grb, SMM_CRR_AXFCNE20240322_065522_20240322_060000_20240322_060000.grb, SMM_LSR_AXFCNE20240322_065522_20240322_060000_20240322_060000.grbxref_sea_ice_mask_files :SMM_ICN_AXFCNE20240322_095633_20240321_000000_20240321_235959.nc, SMM_ICS_AXFCNE20240322_095633_20240321_000000_20240321_235959.nc, SMM_ICN_AXFCNE20240323_041507_20240322_000000_20240322_235959.nc, SMM_ICS_AXFCNE20240323_042002_20240322_000000_20240322_235959.ncxref_wave_model_files :SMM_WMA_AXPCNE20240322_072016_20240321_030000_20240322_000000.grb, SMM_WMA_AXPCNE20240323_072017_20240322_030000_20240323_000000.grbxref_geco_database_version :v102ellipsoid_semi_major_axis :6378137.0ellipsoid_flattening :0.0033528106647474805good_ocean_data_percent :67.62656103685167ssha_variance :0.7787372594877449references :V1.2.1equator_longitude :52.58", + "text": "Use earthaccess to search SWOT data\nHere we use the SSH shortname, SWOT_L2_LR_SSH_Expert_2.0\n\nssh_results = earthaccess.search_data(short_name = 'SWOT_L2_LR_SSH_Expert_2.0', \n temporal = (\"2024-03-22 00:00:00\", \"2024-03-22 23:59:59\"))#,\n #granule_name = '*_Expert_012_455*') #if you know what cycle and pass you want, you can be more specific\n\nGranules found: 29\n\n\n\nIf accessing via Local Machine\n\n# If you are on a local machine, download the first file to your local computer\nearthaccess.download(ssh_results[0], \"./data_downloads/SWOT_files\")\n\n Getting 1 granules, approx download size: 0.03 GB\n\n\n\n\n\n\n\n\n\n\n\n['data_downloads\\\\SWOT_files\\\\SWOT_L2_LR_SSH_Expert_012_428_20240321T235733_20240322T004901_PIC0_01.nc']\n\n\n\n# Open via xarray\nds = xr.open_mfdataset(\"./data_downloads/SWOT_files/SWOT_L2_LR_SSH_Expert*.nc\")#, mask_and_scale=False)\nds\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (num_lines: 9866, num_pixels: 69,\n num_sides: 2)\nCoordinates:\n latitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n longitude (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n latitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\n longitude_nadir (num_lines) float64 dask.array<chunksize=(9866,), meta=np.ndarray>\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/98)\n time (num_lines) datetime64[ns] dask.array<chunksize=(9866,), meta=np.ndarray>\n time_tai (num_lines) datetime64[ns] dask.array<chunksize=(9866,), meta=np.ndarray>\n ssh_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_qual (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssh_karin_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ssha_karin (num_lines, num_pixels) float64 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n ... ...\n swh_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n swh_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n wind_speed_ssb_cor_source_2 (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\n volumetric_correlation_uncert (num_lines, num_pixels) float32 dask.array<chunksize=(9866, 69), meta=np.ndarray>\nAttributes: (12/62)\n Conventions: CF-1.7\n title: Level 2 Low Rate Sea Surfa...\n institution: CNES\n source: Ka-band radar interferometer\n history: 2024-03-24T22:39:40Z : Cre...\n platform: SWOT\n ... ...\n ellipsoid_semi_major_axis: 6378137.0\n ellipsoid_flattening: 0.0033528106647474805\n good_ocean_data_percent: 67.62656103685167\n ssha_variance: 0.7787372594877449\n references: V1.2.1\n equator_longitude: 52.58xarray.DatasetDimensions:num_lines: 9866num_pixels: 69num_sides: 2Coordinates: (4)latitude(num_lines, num_pixels)float64dask.array<chunksize=(9866, 69), meta=np.ndarray>long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_min :-80000000valid_max :80000000comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nlongitude\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\n\n\n\nData variables: (98)\n\n\n\n\n\n\n\ntime\n\n\n(num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(num_lines)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\ndatetime64[ns]\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4212113375\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n60000\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_ssb_missing bad_radiometer_corr_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4279222239\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssh_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sea surface height from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809460191\n\ncomment :\n\nQuality flag for sea surface height from KaRIn in ssh_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nquality_flag :\n\nssha_karin_2_qual\n\nvalid_min :\n\n-1000000\n\nvalid_max :\n\n1000000\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nssha_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea surface height anomaly quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_ssh_delta suspect_large_ssh_std suspect_large_ssh_window_std suspect_beam_used suspect_less_than_nine_beams suspect_ssb_out_of_range suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_ssb_not_computable degraded_media_delays_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_tide_corrections_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 64 128 256 512 1024 2048 4096 8192 32768 65536 131072 262144 524288 16777216 33554432 67108864 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3876569055\n\ncomment :\n\nQuality flag for the SSHA from KaRIn in the ssha_karin_2 variable\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n157.86 kB\n157.86 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nobject\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nquality_flag :\n\nswh_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_rain_likely suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 32 128 256 512 1024 2048 4096 8192 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809361848\n\ncomment :\n\nQuality flag for significant wave height from KaRIn in swh_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n25000\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862815\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_qual variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1000.0\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000000.0\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_large_nrcs_delta suspect_large_nrcs_std suspect_large_nrcs_window_std suspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 1 2 4 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427359\n\ncomment :\n\nQuality flag for sigma0 from KaRIn in sig0_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_radiometer_media_attenuation_missing bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4077862808\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from KaRIn\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nquality_flag :\n\nwind_speed_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_karin_2_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for wind speed from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nsuspect_beam_used suspect_less_than_nine_beams suspect_pixel_used suspect_num_pt_avg suspect_karin_telem suspect_orbit_control suspect_sc_event_flag suspect_tvp_qual suspect_volumetric_corr degraded_media_attenuation_missing degraded_beam_used degraded_large_attitude degraded_karin_ifft_overflow bad_karin_telem bad_very_large_attitude bad_outside_of_range degraded bad_not_usable\n\nflag_masks :\n\n[ 8 16 128 256 512 1024 2048 4096 8192 65536 131072 262144 524288 16777216 33554432 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3809427352\n\ncomment :\n\nQuality flag for wind speed from KaRIn in wind_speed_karin_2 variable.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_min :\n\n0\n\nvalid_max :\n\n289\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_wind_speed_karin_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute wind speed from KaRIn\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the wind speed estimate from KaRIn data in wind_speed_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_nadir_altimeter\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from nadir altimeter\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from nadir altimeter.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsignificant wave height from wave model\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nSignificant wave height from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ndegree\n\nvalid_min :\n\n0\n\nvalid_max :\n\n36000\n\ncomment :\n\nMean sea surface wave direction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nt02 mean wave period\n\nstandard_name :\n\nsea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\ninstitution :\n\nMeteo France\n\nunits :\n\ns\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nu component of model wind\n\nstandard_name :\n\neastward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nv component of model wind\n\nstandard_name :\n\nnorthward_wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwind speed from radiometer\n\nstandard_name :\n\nwind_speed\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm/s\n\nvalid_min :\n\n0\n\nvalid_max :\n\n65000\n\ncomment :\n\nWind speed from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-21000\n\nvalid_max :\n\n21000\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n35999\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsurface classification\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nMODIS/GlobCover\n\ninstitution :\n\nEuropean Space Agency\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0 1 2 3 4 5 6]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n6\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nflag_meanings :\n\nno_ice probable_ice ice no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nno_rain probable_rain rain no_data\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer surface type flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000000000\n\ncomment :\n\nAltitude of the KMSF origin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_min :\n\n-3500\n\nvalid_max :\n\n3500\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n39.46 kB\n39.46 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n-1799999\n\nvalid_max :\n\n1800000\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nquality_flag :\n\norbit_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood orbit_estimated_during_a_maneuver orbit_interpolated_over_data_gap orbit_extrapolated_for_a_duration_less_than_1_day orbit_extrapolated_for_a_duration_between_1_to_2_days orbit_extrapolated_for_a_duration_greater_than_2_days bad_attitude\n\nflag_values :\n\n[ 0 4 5 6 7 8 64]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n64\n\ncomment :\n\nFlag indicating the quality of the reconstructed attitude and orbit ephemeris. A value of 0 indicates the reconstructed attitude and orbit ephemeris are both good. Non-zero values less than 64 indicate that the reconstructed attitude is good but there are issues that degrade the quality of the orbit ephemeris. A value of 64 indicates that the reconstructed attitude is degraded or bad.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n39.46 kB\n39.46 kB\n\n\nShape\n(9866,)\n(9866,)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 1\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80000000\n\nvalid_max :\n\n80000000\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_min :\n\n0\n\nvalid_max :\n\n359999999\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nx_factor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1e+20\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_2_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_karin_qual\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_min :\n\n-15000000\n\nvalid_max :\n\n150000000\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n13000\n\nvalid_max :\n\n25000\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nstandard_name :\n\ntoa_brightness_temperature\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nK\n\nvalid_min :\n\n15000\n\nvalid_max :\n\n28000\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater vapor content from radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n15000\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nliquid water content from radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nkg/m^2\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2000\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n78.93 kB\n78.93 kB\n\n\nShape\n(9866, 2)\n(9866, 2)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 2 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\ninstitution :\n\nDTU\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ngeoid\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nunits :\n\nm\n\nvalid_min :\n\n-1500000\n\nvalid_max :\n\n1500000\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n30000\n\ncomment :\n\nMean dynamic topography above the geoid.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_2022\n\ninstitution :\n\nCNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\ninstitution :\n\nEuropean Space Agency\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n10000\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n10000\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-300000\n\nvalid_max :\n\n300000\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nNone\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nCoherent internal tide. This value is currently always defaulted.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\npole_tide\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ndac\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nunits :\n\nm\n\nvalid_min :\n\n-12000\n\nvalid_max :\n\n12000\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_min :\n\n-2000\n\nvalid_max :\n\n2000\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-30000\n\nvalid_max :\n\n-15000\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_qual\n\nvalid_min :\n\n-10000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\nunits :\n\nm\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n-5000\n\nvalid_max :\n\n0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from crossover calibration\n\nunits :\n\nm\n\nquality_flag :\n\nheight_cor_xover_qual\n\nvalid_min :\n\n-100000\n\nvalid_max :\n\n100000\n\ncomment :\n\nHeight correction from crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.45 MB\n5.45 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nheight_cor_xover_qual\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nquality flag for height correction from crossover calibration\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\ngood suspect bad\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nFlag indicating the quality of the height correction from crossover calibration. Values of 0, 1, and 2 indicate that the correction is good, suspect, and bad, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\nunits :\n\nmm/hr\n\nvalid_min :\n\n0\n\nvalid_max :\n\n200\n\ncomment :\n\nRain rate from weather model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nice_conc\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nconcentration of sea ice\n\nstandard_name :\n\nsea_ice_area_fraction\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\ninstitution :\n\nEUMETSAT\n\nunits :\n\n%\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\nConcentration of sea ice from model.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea state bias correction\n\nsource :\n\nCNES\n\nunits :\n\nm\n\nvalid_min :\n\n-6000\n\nvalid_max :\n\n0\n\ncomment :\n\nSea state bias correction used to compute ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nswh_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for significant wave height information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of significant wave height information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nwind_speed_ssb_cor_source_2\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsource flag for wind speed information used to compute sea state bias correction\n\nstandard_name :\n\nstatus_flag\n\nflag_meanings :\n\nnadir_altimeter karin model\n\nflag_masks :\n\n[1 2 4]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n7\n\ncomment :\n\nBit flag that indicates the source of wind speed information that was used to compute the sea state bias correction in sea_state_bias_cor_2.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nvolumetric_correlation\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n20000\n\ncomment :\n\nVolumetric correlation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\n\n\nvolumetric_correlation_uncert\n\n\n(num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(9866, 69), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nvolumetric correlation standard deviation\n\nunits :\n\n1\n\nquality_flag :\n\nssh_karin_2_qual\n\nvalid_min :\n\n0\n\nvalid_max :\n\n10000\n\ncomment :\n\n1-sigma uncertainty computed analytically using observed correlation and effective number of looks. Two-sided error bars (volumetric_correlation-volumetric_correlation_uncert, volumetric_correlation+volumetric_correlation_uncert) include 68% of probability distribution.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.72 MB\n2.72 MB\n\n\nShape\n(9866, 69)\n(9866, 69)\n\n\nCount\n2 Tasks\n1 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 69 9866\n\n\n\n\n\n\nIndexes: (0)Attributes: (62)Conventions :CF-1.7title :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Waveinstitution :CNESsource :Ka-band radar interferometerhistory :2024-03-24T22:39:40Z : Creationplatform :SWOTreference_document :D-56407_SWOT_Product_Description_L2_LR_SSHcontact :podaac@jpl.nasa.govcycle_number :12pass_number :428equator_time :2024-03-22T00:23:15.167000Zshort_name :L2_LR_SSHproduct_file_id :Expertcrid :PIC0product_version :01pge_name :PGE_L2_LR_SSHpge_version :5.0.2time_coverage_start :2024-03-21T23:57:33.259925time_coverage_end :2024-03-22T00:49:01.265518geospatial_lon_min :328.86312899999996geospatial_lon_max :136.307662geospatial_lat_min :-78.271942geospatial_lat_max :78.27206799999999left_first_longitude :328.86312899999996left_first_latitude :78.27200599999999left_last_longitude :136.288291left_last_latitude :-77.05370099999999right_first_longitude :328.880955right_first_latitude :77.053837right_last_longitude :136.307662right_last_latitude :-78.27186999999999wavelength :0.008385803020979021transmit_antenna :minus_yxref_l1b_lr_intf_file :SWOT_L1B_LR_INTF_012_428_20240321T235729_20240322T004904_PIC0_01.ncxref_l2_nalt_gdr_files :SWOT_IPN_2PfP012_427_20240321_230606_20240321_235733.nc, SWOT_IPN_2PfP012_428_20240321_235733_20240322_004900.nc, SWOT_IPN_2PfP012_429_20240322_004900_20240322_014027.ncxref_l2_rad_gdr_files :SWOT_IPRAD_2PaP012_427_20240321_230603_20240321_235737_PIC0_01.nc, SWOT_IPRAD_2PaP012_428_20240321_235729_20240322_004904_PIC0_01.nc, SWOT_IPRAD_2PaP012_429_20240322_004856_20240322_014031_PIC0_01.ncxref_int_lr_xover_cal_file :SWOT_INT_LR_XOverCal_20240321T235723_20240322T235815_PIC0_01.ncxref_statickarincal_files :SWOT_StaticKaRInCalAdjustableParam_20000101T000000_20991231T235959_20230823T210000_v106.ncxref_param_l2_lr_precalssh_file :SWOT_Param_L2_LR_PreCalSSH_20000101T000000_20991231T235959_20230815T120500_v301.ncxref_orbit_ephemeris_file :SWOT_POR_AXVCNE20240323_105038_20240321_225923_20240323_005923.ncxref_reforbittrack_files :SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtxref_meteorological_sealevel_pressure_files :SMM_PMA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_PMA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_PMA_AXVCNE20240322_163941_20240322_060000_20240322_060000xref_meteorological_wettroposphere_files :SMM_WEA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_WEA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_WEA_AXVCNE20240322_163941_20240322_060000_20240322_060000xref_meteorological_wind_files :SMM_VWA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_UWA_AXVCNE20240322_031037_20240321_180000_20240321_180000, SMM_VWA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_UWA_AXVCNE20240322_051603_20240322_000000_20240322_000000, SMM_UWA_AXVCNE20240322_163941_20240322_060000_20240322_060000, SMM_VWA_AXVCNE20240322_163941_20240322_060000_20240322_060000xref_meteorological_surface_pressure_files :SMM_PSA_AXVCNE20240322_054027_20240321_180000_20240321_180000, SMM_PSA_AXVCNE20240322_054027_20240322_000000_20240322_000000, SMM_PSA_AXVCNE20240322_174027_20240322_060000_20240322_060000xref_meteorological_temperature_files :SMM_T2M_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_T2M_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_T2M_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_meteorological_water_vapor_files :SMM_CWV_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_CWV_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_CWV_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_meteorological_cloud_liquid_water_files :SMM_CLW_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_CLW_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_CLW_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_model_significant_wave_height_files :SMM_SWH_AXPCNE20240322_054027_20240321_180000_20240321_180000.grb, SMM_SWH_AXPCNE20240322_054027_20240322_000000_20240322_000000.grb, SMM_SWH_AXPCNE20240322_174027_20240322_060000_20240322_060000.grbxref_gim_files :JPLQ0810.24I, JPLQ0820.24Ixref_pole_location_file :SMM_PO1_AXXCNE20240324_020000_19900101_000000_20240920_000000xref_dac_files :SMM_MOG_AXPCNE20240322_074502_20240321_180000_20240321_180000, SMM_MOG_AXPCNE20240322_074502_20240322_000000_20240322_000000, SMM_MOG_AXPCNE20240322_203000_20240322_060000_20240322_060000xref_precipitation_files :SMM_LSR_AXFCNE20240321_185544_20240321_180000_20240321_180000.grb, SMM_CRR_AXFCNE20240321_185544_20240321_180000_20240321_180000.grb, SMM_CRR_AXFCNE20240322_065522_20240322_000000_20240322_000000.grb, SMM_LSR_AXFCNE20240322_065522_20240322_000000_20240322_000000.grb, SMM_CRR_AXFCNE20240322_065522_20240322_060000_20240322_060000.grb, SMM_LSR_AXFCNE20240322_065522_20240322_060000_20240322_060000.grbxref_sea_ice_mask_files :SMM_ICN_AXFCNE20240322_095633_20240321_000000_20240321_235959.nc, SMM_ICS_AXFCNE20240322_095633_20240321_000000_20240321_235959.nc, SMM_ICN_AXFCNE20240323_041507_20240322_000000_20240322_235959.nc, SMM_ICS_AXFCNE20240323_042002_20240322_000000_20240322_235959.ncxref_wave_model_files :SMM_WMA_AXPCNE20240322_072016_20240321_030000_20240322_000000.grb, SMM_WMA_AXPCNE20240323_072017_20240322_030000_20240323_000000.grbxref_geco_database_version :v102ellipsoid_semi_major_axis :6378137.0ellipsoid_flattening :0.0033528106647474805good_ocean_data_percent :67.62656103685167ssha_variance :0.7787372594877449references :V1.2.1equator_longitude :52.58", "crumbs": [ "Tutorials", "Dataset Specific", @@ -3683,7 +3683,7 @@ "href": "notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html#locate-gauge-and-rive-discharge-data.", "title": "Visualizing discharge in the SWORD of Science (SoS)", "section": "Locate gauge and rive discharge data.", - "text": "Locate gauge and rive discharge data.\nWe can now locate gauge and river discharge data from the SoS using either the data read directly from S3 or downloaded to your local computer.\n\n# Constants\n\n# Select a river\nRIVER_NAME = \"Rhine\"\n\n# Select a discharge algorithm (hivdi, neobam, metroman, momma, sad, sic4dvar)\nDISCHARGE_ALGORITHM = \"hivdi\"\nDISCHARGE_VARIABLE = \"Q\"\n\n\n# Get discharge for a specific river name\nriver_names = results['reaches']['river_name'][:]\nreach_idx = np.where(river_names[:] == RIVER_NAME)\n\n\n# Filter out missing values\ndischarge = results[DISCHARGE_ALGORITHM][DISCHARGE_VARIABLE][:][reach_idx]\nmissing = results[DISCHARGE_ALGORITHM][DISCHARGE_VARIABLE].missing_value\n\n# Loop through each reach and filter out places where the missing value is present\nfor i in range(discharge.shape[0]):\n is_missing = np.all(discharge[i] == missing)\n if is_missing:\n discharge[i] = np.array([np.nan])\n else:\n discharge[i][discharge[i] == missing] = np.nan\n\n# discharge = discharge[data_indexes] \nprint(f\"Discharge values:\\n {discharge}\")\nprint(f\"Length of discharge values: {discharge.shape}\")\n\nDischarge values:\n [array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 54.07821944,\n 49.94874936, 34.29138816, 34.49135369])\n array([ nan, nan, nan, nan, nan,\n nan, 82.61844383, nan, nan, nan,\n nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 2907.9691168 ,\n 3153.60845063, 3297.52519565, nan, 2184.5119275 ,\n 2488.26914856])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, 140.25074677, 7878.00373995,\n 1852.91098506, nan, nan, nan,\n nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, 4464.2000491 , 5722.24574639,\n nan, 279.63722341, 258.96348657, 323.14058122,\n 4320.51866836])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, nan, nan, nan,\n 3172.76812796])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, 812.95022706, 821.39065048,\n 824.5340281 , 748.25414935, 750.22182631, 727.4228604 ,\n 714.90032622])\n array([ nan, nan, nan, nan, nan,\n nan, 12.96023473, 13.62441855, 9.2229579 , 6.78091378,\n 6.08133493, 3.86084087, 4.35815961])\n array([ nan, nan, nan, nan, nan,\n nan, 46.33641998, 44.15285669, nan, 14.58184889,\n nan, 0.6631935 , 5.5124224 ])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n nan, nan, 482.5083491])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 52.73158663, nan, 28.40903799,\n nan, 9.20201576, 1.32055668])\n array([ nan, nan, nan, nan,\n nan, nan, 280.86449094, 205.30851846,\n 110.83887881, 151.87592498, 227.77297649, 93.05295619,\n 81.05582342])\n array([ nan, nan, nan, nan, nan,\n nan, 47.52573484, nan, nan, nan,\n nan, 77.78871975, 12.8748962 ])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 19.66703691, nan, nan,\n nan, nan, nan])\n array([ nan, nan, nan, nan, nan,\n nan, 96.90955888, 45.20619634, 5.87241546, nan,\n nan, nan, 0.43745264])\n array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, 16.7157942 , 14.55850863, nan, 5.07303443,\n 4.12986955, 2.43344827, 3.19803766])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 17.64858373, 14.15283703, 7.97109699,\n 3.93440203, 3.08442744, 2.44310106, 2.33711971])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n 4.47810394, 1.72949116, 1.83256864, 1.75216572])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 98.51437115, 90.98432077, 98.10419242,\n nan, 57.94006526, 30.77548924, 57.57734148])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 50.55048997, nan,\n 26.59220618, 23.64661731, 24.57567818, 23.99663384])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 69.2017186 , 55.13156023, nan,\n nan, 32.72661602, 25.27141885, 27.32154394])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 91.85689278,\n 118.09762553, 70.72385117, 117.09601965, 46.02141169,\n 43.47693004, 58.09836739])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 66.50971298, 64.91180821,\n 57.92947014, 52.98187408, 50.83445596, 52.76051291])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 70.04344344, 65.22378172,\n 55.93499204, 50.85696393, 56.55554003, 57.94008371])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n 11.61540995, 12.1144766 , 12.34147342, 13.03231781])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n 100.96540712, 100.02751124, 91.80281586, 93.81840639,\n 94.86759615, 99.19542762])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 1213.67194541,\n 1138.18496353, 1115.0978839 , 1069.45943177, 1082.94584138,\n 1198.94024353, 1108.93895269])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 149.84091602,\n 143.07347301, 142.0394067 , 134.96703933, 134.45761119,\n 142.42974651, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 479.13397319,\n 431.81058979, 419.96984402, nan, 495.59938085,\n nan, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 117.09868443,\n 122.22892084, nan, 113.9907313 , 114.47006025,\n 123.33244731, nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 0.34485608, 0.35643217, 3.14244405,\n 4.29356865, 2.06295992, 3.93507027, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 1517.63972134,\n 1338.77519837, 5921.30623408, nan, 3735.38675824,\n 5768.54043902, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 150.0785271 ,\n 138.15145821, 115.59306174, nan, 122.53882181,\n 102.65471851, 170.72795537])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 225.29351257,\n 282.74613246, nan, nan, nan,\n 28.93018406, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 284.92595543,\n 269.58929591, 200.69054755, 199.35693809, 262.95554178,\n 274.66925045, 196.70624072])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 13.99616776, 28.98604862,\n 38.61180849, 3.45407562, 1.8285061 , 0.43871852, 31.92912359])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 361.15208977, nan, 79.9505899 ,\n 56.65382349, 315.28092266, nan])\n array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n 11.40702748, 9.05996153, 10.35840011, 10.52491965, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n 18066.12312538, nan, 13155.40783521, 13592.3818625 ,\n 13460.42744663, 15166.61524739, 15473.56388479])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 8.01126872e+00, 8.30272947e-01, nan,\n nan, nan, 1.17583270e+04])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 38.15129006,\n 3.3873721 , nan, nan, nan, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 0.46128164, 359.28851327, nan,\n nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 25.22047988,\n nan, nan, nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 3498.82326002, nan, nan,\n nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 3701.80872278, nan, nan,\n nan, nan, nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 35.46511394,\n 38.00128732, nan, 39.64547151, 43.47713267, 45.55741719])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])]\nLength of discharge values: (146,)\n\n\n\n# Take the mean of the algorithm's river discharge - requires a loop because of ragged arrays\nmean_discharge = []\nfor d in discharge:\n with warnings.catch_warnings():\n warnings.simplefilter(\"ignore\", category=RuntimeWarning) # Ignore mean of empty slice as this is expected\n mean_discharge.append(np.nanmean(d)) # Ignore NaNs\nprint(f\"Mean discharge:\\n {mean_discharge}\")\nprint(f\"Mean discharge length: {len(mean_discharge)}\")\n\nMean discharge:\n [nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 43.20242766259139, 82.6184438345387, nan, 2806.3767678265503, nan, 3290.3884905945197, nan, 2561.4509591772926, nan, nan, nan, 3172.768127964829, nan, 771.382009704293, 8.126980052616233, 22.24934829272215, 482.50834910152236, 22.915799264864788, 164.39565275437067, 46.06311693081852, 19.667036911352756, 37.10640583102956, nan, 7.68478212404095, 7.367366854486422, 2.4480823643843834, 72.31596338656968, 29.87232509528331, 41.93057152878337, 77.9101568923245, 57.65463904823475, 59.425800813779496, 12.275919445942492, 96.77952739610087, 1132.4627517441627, 141.1346987945013, nan, 456.62844696408314, 118.22416882714128, 2.355888522926942, 3656.3296702111575, 133.2907571236616, nan, 178.98994303187487, 241.2705385597663, nan, nan, nan, 17.034921242178314, nan, nan, nan, 203.25935645781158, nan, 10.33757719434832, 14819.086566983768, nan, nan, nan, nan, nan, nan, nan, 3922.3895222840197, 20.769331076880015, 179.8748974544238, nan, 25.22047987608233, nan, 3498.8232600199126, nan, 3701.808722784879, nan, nan, nan, nan, nan, nan, nan, nan, 40.42928452605076, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan]\nMean discharge length: 146\n\n\n\n# Convert discharge and reach identifiers into DataFrame\nreach_ids = results[\"reaches\"][\"reach_id\"][:][reach_idx].filled()\npdf = pd.DataFrame({\n \"reach_id\": reach_ids,\n \"discharge\": mean_discharge\n})\npdf.head()\n\n\n\n\n\n\n\n\n\nreach_id\ndischarge\n\n\n\n\n0\n23261000181\nNaN\n\n\n1\n23261000191\nNaN\n\n\n2\n23261000201\nNaN\n\n\n3\n23261000211\nNaN\n\n\n4\n23261000221\nNaN\n\n\n\n\n\n\n\n\n\nresults.close() # Close the NetCDF dataset", + "text": "Locate gauge and rive discharge data.\nWe can now locate gauge and river discharge data from the SoS using either the data read directly from S3 or downloaded to your local computer.\n\n# Constants\n\n# Select a river\nRIVER_NAME = \"Rhine\"\n\n# Select a discharge algorithm (hivdi, neobam, metroman, momma, sad, sic4dvar)\nDISCHARGE_ALGORITHM = \"hivdi\"\nDISCHARGE_VARIABLE = \"Q\"\n\n\n# Get discharge for a specific river name\nriver_names = results['reaches']['river_name'][:]\nreach_idx = np.where(river_names[:] == RIVER_NAME)\n\n\n# Filter out missing values\ndischarge = results[DISCHARGE_ALGORITHM][DISCHARGE_VARIABLE][:][reach_idx]\nmissing = results[DISCHARGE_ALGORITHM][DISCHARGE_VARIABLE].missing_value\n\n# Loop through each reach and filter out places where the missing value is present\nfor i in range(discharge.shape[0]):\n is_missing = np.all(discharge[i] == missing)\n if is_missing:\n discharge[i] = np.array([np.nan])\n else:\n discharge[i][discharge[i] == missing] = np.nan\n\n# discharge = discharge[data_indexes] \nprint(f\"Discharge values:\\n {discharge}\")\nprint(f\"Length of discharge values: {discharge.shape}\")\n\nDischarge values:\n [array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 54.07821944,\n 49.94874936, 34.29138816, 34.49135369])\n array([ nan, nan, nan, nan, nan,\n nan, 82.61844383, nan, nan, nan,\n nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 2907.9691168 ,\n 3153.60845063, 3297.52519565, nan, 2184.5119275 ,\n 2488.26914856])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, 140.25074677, 7878.00373995,\n 1852.91098506, nan, nan, nan,\n nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, 4464.2000491 , 5722.24574639,\n nan, 279.63722341, 258.96348657, 323.14058122,\n 4320.51866836])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, nan, nan, nan,\n 3172.76812796])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, 812.95022706, 821.39065048,\n 824.5340281 , 748.25414935, 750.22182631, 727.4228604 ,\n 714.90032622])\n array([ nan, nan, nan, nan, nan,\n nan, 12.96023473, 13.62441855, 9.2229579 , 6.78091378,\n 6.08133493, 3.86084087, 4.35815961])\n array([ nan, nan, nan, nan, nan,\n nan, 46.33641998, 44.15285669, nan, 14.58184889,\n nan, 0.6631935 , 5.5124224 ])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n nan, nan, 482.5083491])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 52.73158663, nan, 28.40903799,\n nan, 9.20201576, 1.32055668])\n array([ nan, nan, nan, nan,\n nan, nan, 280.86449094, 205.30851846,\n 110.83887881, 151.87592498, 227.77297649, 93.05295619,\n 81.05582342])\n array([ nan, nan, nan, nan, nan,\n nan, 47.52573484, nan, nan, nan,\n nan, 77.78871975, 12.8748962 ])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 19.66703691, nan, nan,\n nan, nan, nan])\n array([ nan, nan, nan, nan, nan,\n nan, 96.90955888, 45.20619634, 5.87241546, nan,\n nan, nan, 0.43745264])\n array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, 16.7157942 , 14.55850863, nan, 5.07303443,\n 4.12986955, 2.43344827, 3.19803766])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 17.64858373, 14.15283703, 7.97109699,\n 3.93440203, 3.08442744, 2.44310106, 2.33711971])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n 4.47810394, 1.72949116, 1.83256864, 1.75216572])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 98.51437115, 90.98432077, 98.10419242,\n nan, 57.94006526, 30.77548924, 57.57734148])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 50.55048997, nan,\n 26.59220618, 23.64661731, 24.57567818, 23.99663384])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 69.2017186 , 55.13156023, nan,\n nan, 32.72661602, 25.27141885, 27.32154394])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 91.85689278,\n 118.09762553, 70.72385117, 117.09601965, 46.02141169,\n 43.47693004, 58.09836739])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 66.50971298, 64.91180821,\n 57.92947014, 52.98187408, 50.83445596, 52.76051291])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 70.04344344, 65.22378172,\n 55.93499204, 50.85696393, 56.55554003, 57.94008371])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n 11.61540995, 12.1144766 , 12.34147342, 13.03231781])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n 100.96540712, 100.02751124, 91.80281586, 93.81840639,\n 94.86759615, 99.19542762])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 1213.67194541,\n 1138.18496353, 1115.0978839 , 1069.45943177, 1082.94584138,\n 1198.94024353, 1108.93895269])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 149.84091602,\n 143.07347301, 142.0394067 , 134.96703933, 134.45761119,\n 142.42974651, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 479.13397319,\n 431.81058979, 419.96984402, nan, 495.59938085,\n nan, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 117.09868443,\n 122.22892084, nan, 113.9907313 , 114.47006025,\n 123.33244731, nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, 0.34485608, 0.35643217, 3.14244405,\n 4.29356865, 2.06295992, 3.93507027, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 1517.63972134,\n 1338.77519837, 5921.30623408, nan, 3735.38675824,\n 5768.54043902, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 150.0785271 ,\n 138.15145821, 115.59306174, nan, 122.53882181,\n 102.65471851, 170.72795537])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 225.29351257,\n 282.74613246, nan, nan, nan,\n 28.93018406, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, 284.92595543,\n 269.58929591, 200.69054755, 199.35693809, 262.95554178,\n 274.66925045, 196.70624072])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, 13.99616776, 28.98604862,\n 38.61180849, 3.45407562, 1.8285061 , 0.43871852, 31.92912359])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 361.15208977, nan, 79.9505899 ,\n 56.65382349, 315.28092266, nan])\n array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, nan,\n 11.40702748, 9.05996153, 10.35840011, 10.52491965, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n 18066.12312538, nan, 13155.40783521, 13592.3818625 ,\n 13460.42744663, 15166.61524739, 15473.56388479])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 8.01126872e+00, 8.30272947e-01, nan,\n nan, nan, 1.17583270e+04])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 38.15129006,\n 3.3873721 , nan, nan, nan, nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 0.46128164, 359.28851327, nan,\n nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 25.22047988,\n nan, nan, nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 3498.82326002, nan, nan,\n nan, nan, nan])\n array([nan])\n array([ nan, nan, nan, nan,\n nan, nan, nan, nan,\n nan, 3701.80872278, nan, nan,\n nan, nan, nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan])\n array([ nan, nan, nan, nan, nan,\n nan, nan, nan, nan, 35.46511394,\n 38.00128732, nan, 39.64547151, 43.47713267, 45.55741719])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])\n array([nan]) array([nan]) array([nan]) array([nan]) array([nan])]\nLength of discharge values: (146,)\n\n\n\n# Take the mean of the algorithm's river discharge - requires a loop because of ragged arrays\nmean_discharge = []\nfor d in discharge:\n with warnings.catch_warnings():\n warnings.simplefilter(\"ignore\", category=RuntimeWarning) # Ignore mean of empty slice as this is expected\n mean_discharge.append(np.nanmean(d)) # Ignore NaNs\nprint(f\"Mean discharge:\\n {mean_discharge}\")\nprint(f\"Mean discharge length: {len(mean_discharge)}\")\n\nMean discharge:\n [nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, 43.20242766259139, 82.6184438345387, nan, 2806.3767678265503, nan, 3290.3884905945197, nan, 2561.4509591772926, nan, nan, nan, 3172.768127964829, nan, 771.382009704293, 8.126980052616233, 22.24934829272215, 482.50834910152236, 22.915799264864788, 164.39565275437067, 46.06311693081852, 19.667036911352756, 37.10640583102956, nan, 7.68478212404095, 7.367366854486422, 2.4480823643843834, 72.31596338656968, 29.87232509528331, 41.93057152878337, 77.9101568923245, 57.65463904823475, 59.425800813779496, 12.275919445942492, 96.77952739610087, 1132.4627517441627, 141.1346987945013, nan, 456.62844696408314, 118.22416882714128, 2.355888522926942, 3656.3296702111575, 133.2907571236616, nan, 178.98994303187487, 241.2705385597663, nan, nan, nan, 17.034921242178314, nan, nan, nan, 203.25935645781158, nan, 10.33757719434832, 14819.086566983768, nan, nan, nan, nan, nan, nan, nan, 3922.3895222840197, 20.769331076880015, 179.8748974544238, nan, 25.22047987608233, nan, 3498.8232600199126, nan, 3701.808722784879, nan, nan, nan, nan, nan, nan, nan, nan, 40.42928452605076, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan]\nMean discharge length: 146\n\n\n\n# Convert discharge and reach identifiers into DataFrame\nreach_ids = results[\"reaches\"][\"reach_id\"][:][reach_idx].filled()\npdf = pd.DataFrame({\n \"reach_id\": reach_ids,\n \"discharge\": mean_discharge\n})\npdf.head()\n\n\n\n\n\n\n\n\nreach_id\ndischarge\n\n\n\n\n0\n23261000181\nNaN\n\n\n1\n23261000191\nNaN\n\n\n2\n23261000201\nNaN\n\n\n3\n23261000211\nNaN\n\n\n4\n23261000221\nNaN\n\n\n\n\n\n\n\n\nresults.close() # Close the NetCDF dataset", "crumbs": [ "Tutorials", "Dataset Specific", @@ -3697,7 +3697,7 @@ "href": "notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html#read-in-sword-to-get-topology-data-for-river-name", "title": "Visualizing discharge in the SWORD of Science (SoS)", "section": "Read in SWORD to get topology data for river name", - "text": "Read in SWORD to get topology data for river name\nWe will need to use SWORD to visualize a river’s topology. This will need to be downloaded onto your local computer and placed in a directory that you can reference in the code below. You can SWORD from this site: https://www.swordexplorer.com/. You will need to read in the correct SWORD shapefile by selecting the HydroBASINS Pfafstetter level 2 basins (hbXX) within each continent. See the SWORD Product Description Document for more information.\n\n# Read in SWORD data as GeoPandas DataFrame\nsword = pathlib.Path(\"path/to/SWORD/shapefiles/EU/eu_sword_reaches_hb23_v16.shp\")\ngdf = gpd.read_file(sword)\ngdf.head()\n\n\n\n\n\n\n\n\n\nx\ny\nreach_id\nreach_len\nn_nodes\nwse\nwse_var\nwidth\nwidth_var\nfacc\n...\nn_rch_dn\nrch_id_up\nrch_id_dn\nswot_orbit\nswot_obs\ntype\nriver_name\nedit_flag\ntrib_flag\ngeometry\n\n\n\n\n0\n-6.049157\n37.218576\n23120100011\n13823.649876\n69\n2.5\n0.501996\n108.0\n3443.195570\n1419.435181\n...\n1\n23120100556\n23120100545\n141 447\n2\n1\nNODATA\nNaN\n0\nLINESTRING (-6.10323 37.17382, -6.10289 37.173...\n\n\n1\n-6.078171\n37.217731\n23120100021\n10958.610152\n55\n0.7\n0.000000\n332.0\n4306.172957\n49838.097656\n...\n1\n23120100031\n23120100545\n447\n1\n1\nNODATA\nNaN\n0\nLINESTRING (-6.10323 37.17382, -6.10356 37.174...\n\n\n2\n-6.033200\n37.302991\n23120100031\n10894.357022\n54\n0.7\n0.004637\n256.0\n2452.139491\n49793.073567\n...\n1\n23120100041\n23120100021\n447\n1\n1\nNODATA\nNaN\n0\nLINESTRING (-6.05928 37.26167, -6.05927 37.261...\n\n\n3\n-6.015671\n37.393440\n23120100041\n10926.456281\n55\n1.0\n0.099503\n180.0\n445.458881\n49748.591937\n...\n1\n23120100061 23120100051\n23120100031\n447\n1\n1\nNODATA\nNaN\n0\nLINESTRING (-6.02252 37.34482, -6.02251 37.345...\n\n\n4\n-6.028455\n37.461068\n23120100051\n11942.410756\n60\n3.3\n0.039395\n54.0\n458.125217\n2011.318237\n...\n1\n23120100364\n23120100041\n447\n1\n1\nRivera de Huelva\nNaN\n0\nLINESTRING (-6.00566 37.44168, -6.00599 37.441...\n\n\n\n\n5 rows × 30 columns\n\n\n\n\n\n# Locate reach identifiers for river of interest\nreach_mask = gdf[\"reach_id\"].isin(reach_ids)\ngdf = gdf[reach_mask]\ngdf.head()\n\n\n\n\n\n\n\n\n\nx\ny\nreach_id\nreach_len\nn_nodes\nwse\nwse_var\nwidth\nwidth_var\nfacc\n...\nn_rch_dn\nrch_id_up\nrch_id_dn\nswot_orbit\nswot_obs\ntype\nriver_name\nedit_flag\ntrib_flag\ngeometry\n\n\n\n\n3526\n6.233655\n51.825947\n23261000181\n8580.296766\n43\n9.300000\n0.219616\n375.374664\n923.545609\n159179.679845\n...\n1\n23261000191\n23261000171\n236 514\n2\n1\nRhine\n2\n0\nLINESTRING (6.17589 51.83773, 6.17628 51.83759...\n\n\n3527\n6.323893\n51.780903\n23261000191\n8586.191571\n43\n9.400001\n0.198737\n377.863434\n2695.005803\n159093.279060\n...\n1\n23261000201\n23261000181\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.28873 51.81080, 6.28912 51.81067...\n\n\n3528\n6.403613\n51.742265\n23261000201\n8582.119596\n43\n10.300000\n0.042619\n374.370209\n3483.753299\n159008.223035\n...\n1\n23261000211\n23261000191\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.36071 51.75371, 6.36116 51.75367...\n\n\n3529\n6.509667\n51.674094\n23261000211\n17893.641182\n89\n11.000000\n0.041548\n404.123932\n5500.626216\n158919.468921\n...\n1\n23261000231 23261000221\n23261000201\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.41422 51.71362, 6.41455 51.71344...\n\n\n3530\n6.608218\n51.634048\n23261000221\n1289.550762\n6\n12.100000\n0.000000\n127.000000\n4780.127500\n158732.593750\n...\n1\n23261000274\n23261000211\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.60434 51.63966, 6.60457 51.63917...\n\n\n\n\n5 rows × 30 columns\n\n\n\n\n\n# Join discharge to GeoPandas DataFrame and extract discharge and geometries\ngdf = gdf.join(pdf.set_index(\"reach_id\"), on=\"reach_id\")\ngdf[\"discharge\"] = gdf[\"discharge\"].fillna(missing)\ngdf.head()\n\n\n\n\n\n\n\n\n\nx\ny\nreach_id\nreach_len\nn_nodes\nwse\nwse_var\nwidth\nwidth_var\nfacc\n...\nrch_id_up\nrch_id_dn\nswot_orbit\nswot_obs\ntype\nriver_name\nedit_flag\ntrib_flag\ngeometry\ndischarge\n\n\n\n\n3526\n6.233655\n51.825947\n23261000181\n8580.296766\n43\n9.300000\n0.219616\n375.374664\n923.545609\n159179.679845\n...\n23261000191\n23261000171\n236 514\n2\n1\nRhine\n2\n0\nLINESTRING (6.17589 51.83773, 6.17628 51.83759...\n-1.000000e+12\n\n\n3527\n6.323893\n51.780903\n23261000191\n8586.191571\n43\n9.400001\n0.198737\n377.863434\n2695.005803\n159093.279060\n...\n23261000201\n23261000181\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.28873 51.81080, 6.28912 51.81067...\n-1.000000e+12\n\n\n3528\n6.403613\n51.742265\n23261000201\n8582.119596\n43\n10.300000\n0.042619\n374.370209\n3483.753299\n159008.223035\n...\n23261000211\n23261000191\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.36071 51.75371, 6.36116 51.75367...\n-1.000000e+12\n\n\n3529\n6.509667\n51.674094\n23261000211\n17893.641182\n89\n11.000000\n0.041548\n404.123932\n5500.626216\n158919.468921\n...\n23261000231 23261000221\n23261000201\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.41422 51.71362, 6.41455 51.71344...\n-1.000000e+12\n\n\n3530\n6.608218\n51.634048\n23261000221\n1289.550762\n6\n12.100000\n0.000000\n127.000000\n4780.127500\n158732.593750\n...\n23261000274\n23261000211\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.60434 51.63966, 6.60457 51.63917...\n-1.000000e+12\n\n\n\n\n5 rows × 31 columns", + "text": "Read in SWORD to get topology data for river name\nWe will need to use SWORD to visualize a river’s topology. This will need to be downloaded onto your local computer and placed in a directory that you can reference in the code below. You can SWORD from this site: https://www.swordexplorer.com/. You will need to read in the correct SWORD shapefile by selecting the HydroBASINS Pfafstetter level 2 basins (hbXX) within each continent. See the SWORD Product Description Document for more information.\n\n# Read in SWORD data as GeoPandas DataFrame\nsword = pathlib.Path(\"path/to/SWORD/shapefiles/EU/eu_sword_reaches_hb23_v16.shp\")\ngdf = gpd.read_file(sword)\ngdf.head()\n\n\n\n\n\n\n\n\nx\ny\nreach_id\nreach_len\nn_nodes\nwse\nwse_var\nwidth\nwidth_var\nfacc\n...\nn_rch_dn\nrch_id_up\nrch_id_dn\nswot_orbit\nswot_obs\ntype\nriver_name\nedit_flag\ntrib_flag\ngeometry\n\n\n\n\n0\n-6.049157\n37.218576\n23120100011\n13823.649876\n69\n2.5\n0.501996\n108.0\n3443.195570\n1419.435181\n...\n1\n23120100556\n23120100545\n141 447\n2\n1\nNODATA\nNaN\n0\nLINESTRING (-6.10323 37.17382, -6.10289 37.173...\n\n\n1\n-6.078171\n37.217731\n23120100021\n10958.610152\n55\n0.7\n0.000000\n332.0\n4306.172957\n49838.097656\n...\n1\n23120100031\n23120100545\n447\n1\n1\nNODATA\nNaN\n0\nLINESTRING (-6.10323 37.17382, -6.10356 37.174...\n\n\n2\n-6.033200\n37.302991\n23120100031\n10894.357022\n54\n0.7\n0.004637\n256.0\n2452.139491\n49793.073567\n...\n1\n23120100041\n23120100021\n447\n1\n1\nNODATA\nNaN\n0\nLINESTRING (-6.05928 37.26167, -6.05927 37.261...\n\n\n3\n-6.015671\n37.393440\n23120100041\n10926.456281\n55\n1.0\n0.099503\n180.0\n445.458881\n49748.591937\n...\n1\n23120100061 23120100051\n23120100031\n447\n1\n1\nNODATA\nNaN\n0\nLINESTRING (-6.02252 37.34482, -6.02251 37.345...\n\n\n4\n-6.028455\n37.461068\n23120100051\n11942.410756\n60\n3.3\n0.039395\n54.0\n458.125217\n2011.318237\n...\n1\n23120100364\n23120100041\n447\n1\n1\nRivera de Huelva\nNaN\n0\nLINESTRING (-6.00566 37.44168, -6.00599 37.441...\n\n\n\n\n5 rows × 30 columns\n\n\n\n\n# Locate reach identifiers for river of interest\nreach_mask = gdf[\"reach_id\"].isin(reach_ids)\ngdf = gdf[reach_mask]\ngdf.head()\n\n\n\n\n\n\n\n\nx\ny\nreach_id\nreach_len\nn_nodes\nwse\nwse_var\nwidth\nwidth_var\nfacc\n...\nn_rch_dn\nrch_id_up\nrch_id_dn\nswot_orbit\nswot_obs\ntype\nriver_name\nedit_flag\ntrib_flag\ngeometry\n\n\n\n\n3526\n6.233655\n51.825947\n23261000181\n8580.296766\n43\n9.300000\n0.219616\n375.374664\n923.545609\n159179.679845\n...\n1\n23261000191\n23261000171\n236 514\n2\n1\nRhine\n2\n0\nLINESTRING (6.17589 51.83773, 6.17628 51.83759...\n\n\n3527\n6.323893\n51.780903\n23261000191\n8586.191571\n43\n9.400001\n0.198737\n377.863434\n2695.005803\n159093.279060\n...\n1\n23261000201\n23261000181\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.28873 51.81080, 6.28912 51.81067...\n\n\n3528\n6.403613\n51.742265\n23261000201\n8582.119596\n43\n10.300000\n0.042619\n374.370209\n3483.753299\n159008.223035\n...\n1\n23261000211\n23261000191\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.36071 51.75371, 6.36116 51.75367...\n\n\n3529\n6.509667\n51.674094\n23261000211\n17893.641182\n89\n11.000000\n0.041548\n404.123932\n5500.626216\n158919.468921\n...\n1\n23261000231 23261000221\n23261000201\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.41422 51.71362, 6.41455 51.71344...\n\n\n3530\n6.608218\n51.634048\n23261000221\n1289.550762\n6\n12.100000\n0.000000\n127.000000\n4780.127500\n158732.593750\n...\n1\n23261000274\n23261000211\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.60434 51.63966, 6.60457 51.63917...\n\n\n\n\n5 rows × 30 columns\n\n\n\n\n# Join discharge to GeoPandas DataFrame and extract discharge and geometries\ngdf = gdf.join(pdf.set_index(\"reach_id\"), on=\"reach_id\")\ngdf[\"discharge\"] = gdf[\"discharge\"].fillna(missing)\ngdf.head()\n\n\n\n\n\n\n\n\nx\ny\nreach_id\nreach_len\nn_nodes\nwse\nwse_var\nwidth\nwidth_var\nfacc\n...\nrch_id_up\nrch_id_dn\nswot_orbit\nswot_obs\ntype\nriver_name\nedit_flag\ntrib_flag\ngeometry\ndischarge\n\n\n\n\n3526\n6.233655\n51.825947\n23261000181\n8580.296766\n43\n9.300000\n0.219616\n375.374664\n923.545609\n159179.679845\n...\n23261000191\n23261000171\n236 514\n2\n1\nRhine\n2\n0\nLINESTRING (6.17589 51.83773, 6.17628 51.83759...\n-1.000000e+12\n\n\n3527\n6.323893\n51.780903\n23261000191\n8586.191571\n43\n9.400001\n0.198737\n377.863434\n2695.005803\n159093.279060\n...\n23261000201\n23261000181\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.28873 51.81080, 6.28912 51.81067...\n-1.000000e+12\n\n\n3528\n6.403613\n51.742265\n23261000201\n8582.119596\n43\n10.300000\n0.042619\n374.370209\n3483.753299\n159008.223035\n...\n23261000211\n23261000191\n236 514\n2\n1\nRhine\nNaN\n0\nLINESTRING (6.36071 51.75371, 6.36116 51.75367...\n-1.000000e+12\n\n\n3529\n6.509667\n51.674094\n23261000211\n17893.641182\n89\n11.000000\n0.041548\n404.123932\n5500.626216\n158919.468921\n...\n23261000231 23261000221\n23261000201\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.41422 51.71362, 6.41455 51.71344...\n-1.000000e+12\n\n\n3530\n6.608218\n51.634048\n23261000221\n1289.550762\n6\n12.100000\n0.000000\n127.000000\n4780.127500\n158732.593750\n...\n23261000274\n23261000211\n57 236 363 514\n4\n1\nRhine\nNaN\n0\nLINESTRING (6.60434 51.63966, 6.60457 51.63917...\n-1.000000e+12\n\n\n\n\n5 rows × 31 columns", "crumbs": [ "Tutorials", "Dataset Specific", @@ -3980,7 +3980,7 @@ "href": "notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html#usgs-gauge-river-heights", "title": "Mississippi River Heights Exploration:", "section": "USGS Gauge River Heights", - "text": "USGS Gauge River Heights\nIn situ measurements on the Mississippi River can be obtained from the United States Geologic Survey (USGS) National Water Dashboard.\nHere, we zoom into one of the streamgauges toward the outlet of the Mississippi River, Monitoring location 07374525: Mississippi River at Belle Chasse, LA highlighted in green. \nIf the point is selected, data can be obtained for the particular location. This gauge is located at lon, lat: (-89.977847, 29.85715084) and we can obtain gauge height for the time period October 2008 - 2021.\nOnce the text file is downloaded for the gauge heights, and the headers removed, it can be uploaded to the cloud as a dataframe to work alongside the MEaSUREs data. Click the upload files button in the top left corner to do so.\n\ndf_gauge_data = pd.read_csv('Mississippi_outlet_gauge.txt', delimiter = \"\\t\")\n#clean data and convert units to meters\ndf_gauge_data.columns = [\"agency\", \"site_no\", \"datetime\", \"river_height\", \"qual_code\"]\ndf_gauge_data['datetime'] = pd.to_datetime(df_gauge_data['datetime']) \ndf_gauge_data['river_height'] = df_gauge_data['river_height']*0.3048\ndf_gauge_data\n\n\n\n\n\n\n\n\n\nagency\nsite_no\ndatetime\nriver_height\nqual_code\n\n\n\n\n0\nUSGS\n7374525\n2008-10-29\n2.322576\nA\n\n\n1\nUSGS\n7374525\n2008-10-30\n2.337816\nA\n\n\n2\nUSGS\n7374525\n2008-10-31\n2.368296\nA\n\n\n3\nUSGS\n7374525\n2008-11-01\n2.356104\nA\n\n\n4\nUSGS\n7374525\n2008-11-02\n2.459736\nA\n\n\n...\n...\n...\n...\n...\n...\n\n\n4807\nUSGS\n7374525\n2021-12-27\n2.819400\nA\n\n\n4808\nUSGS\n7374525\n2021-12-28\n2.901696\nA\n\n\n4809\nUSGS\n7374525\n2021-12-29\n2.919984\nA\n\n\n4810\nUSGS\n7374525\n2021-12-30\n2.874264\nA\n\n\n4811\nUSGS\n7374525\n2021-12-31\n2.819400\nA\n\n\n\n\n4812 rows × 5 columns\n\n\n\n\n\nPlot the data\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(df_gauge_data.datetime, df_gauge_data.river_height, color = 'darkorange')\n\nplt.xlabel('Date')\nplt.ylabel('USGS River Height (m)')\n\nplt.title('Mississippi River Gauge 07374525, 2008-2021')\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\n\nFind the same location in the MEaSUREs Dataset using lat/lon\nThe closest location in the MEaSUREs dataset to the gauge (-89.977847, 29.85715084) is at index 106 where lon, lat is (-89.976628, 29.855369). We’ll use this for comparison.\n\nds_MEaSUREs.lat[106]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'lat' ()>\narray(29.855369)\nAttributes:\n units: degrees_north\n long_name: latitude\n standard_name: latitude\n axis: Yxarray.DataArray'lat'29.86array(29.855369)Coordinates: (0)Attributes: (4)units :degrees_northlong_name :latitudestandard_name :latitudeaxis :Y\n\n\n\nds_MEaSUREs.lon[106]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'lon' ()>\narray(-89.976628)\nAttributes:\n units: degrees_east\n long_name: longitude\n standard_name: longitude\n axis: Xxarray.DataArray'lon'-89.98array(-89.976628)Coordinates: (0)Attributes: (4)units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :X\n\n\n\nfig = plt.figure(figsize=[14,7]) \nax = plt.axes(projection=ccrs.PlateCarree())\nax.coastlines()\nax.set_extent([-90.5, -89.5, 29.3, 30])\nax.add_feature(cartopy.feature.RIVERS)\n\nplt.scatter(ds_MEaSUREs.lon[106], ds_MEaSUREs.lat[106], lw=1)\nplt.colorbar(label='Interpolated River Heights (m)')\nplt.clim(-10,100)\n\nplt.show()\n\n\n\n\n\n\n\n\n\n\nCombined timeseries plot of river heights from each source\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(df_gauge_data.datetime[0:3823], df_gauge_data.river_height[0:3823], color = 'darkorange')\nds_MEaSUREs.height[106,5657:9439].plot(color='darkblue')\n\nplt.xlabel('Date')\nplt.ylabel('River Height (m)')\nplt.legend(['USGS', 'MEaSUREs'], loc='lower right')\n\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\n\nLooks like the datums need fixing!\nThe USGS gauge datum is 6.58 feet below NAVD88 GEOID12B EPOCH 2010, while the MEaSUREs datum is height above the WGS84 Earth Gravitational Model (EGM 08) geoid, causing this discrepancy.", + "text": "USGS Gauge River Heights\nIn situ measurements on the Mississippi River can be obtained from the United States Geologic Survey (USGS) National Water Dashboard.\nHere, we zoom into one of the streamgauges toward the outlet of the Mississippi River, Monitoring location 07374525: Mississippi River at Belle Chasse, LA highlighted in green. \nIf the point is selected, data can be obtained for the particular location. This gauge is located at lon, lat: (-89.977847, 29.85715084) and we can obtain gauge height for the time period October 2008 - 2021.\nOnce the text file is downloaded for the gauge heights, and the headers removed, it can be uploaded to the cloud as a dataframe to work alongside the MEaSUREs data. Click the upload files button in the top left corner to do so.\n\ndf_gauge_data = pd.read_csv('Mississippi_outlet_gauge.txt', delimiter = \"\\t\")\n#clean data and convert units to meters\ndf_gauge_data.columns = [\"agency\", \"site_no\", \"datetime\", \"river_height\", \"qual_code\"]\ndf_gauge_data['datetime'] = pd.to_datetime(df_gauge_data['datetime']) \ndf_gauge_data['river_height'] = df_gauge_data['river_height']*0.3048\ndf_gauge_data\n\n\n\n\n\n\n\n\nagency\nsite_no\ndatetime\nriver_height\nqual_code\n\n\n\n\n0\nUSGS\n7374525\n2008-10-29\n2.322576\nA\n\n\n1\nUSGS\n7374525\n2008-10-30\n2.337816\nA\n\n\n2\nUSGS\n7374525\n2008-10-31\n2.368296\nA\n\n\n3\nUSGS\n7374525\n2008-11-01\n2.356104\nA\n\n\n4\nUSGS\n7374525\n2008-11-02\n2.459736\nA\n\n\n...\n...\n...\n...\n...\n...\n\n\n4807\nUSGS\n7374525\n2021-12-27\n2.819400\nA\n\n\n4808\nUSGS\n7374525\n2021-12-28\n2.901696\nA\n\n\n4809\nUSGS\n7374525\n2021-12-29\n2.919984\nA\n\n\n4810\nUSGS\n7374525\n2021-12-30\n2.874264\nA\n\n\n4811\nUSGS\n7374525\n2021-12-31\n2.819400\nA\n\n\n\n\n4812 rows × 5 columns\n\n\n\n\nPlot the data\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(df_gauge_data.datetime, df_gauge_data.river_height, color = 'darkorange')\n\nplt.xlabel('Date')\nplt.ylabel('USGS River Height (m)')\n\nplt.title('Mississippi River Gauge 07374525, 2008-2021')\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\n\nFind the same location in the MEaSUREs Dataset using lat/lon\nThe closest location in the MEaSUREs dataset to the gauge (-89.977847, 29.85715084) is at index 106 where lon, lat is (-89.976628, 29.855369). We’ll use this for comparison.\n\nds_MEaSUREs.lat[106]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'lat' ()>\narray(29.855369)\nAttributes:\n units: degrees_north\n long_name: latitude\n standard_name: latitude\n axis: Yxarray.DataArray'lat'29.86array(29.855369)Coordinates: (0)Attributes: (4)units :degrees_northlong_name :latitudestandard_name :latitudeaxis :Y\n\n\n\nds_MEaSUREs.lon[106]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'lon' ()>\narray(-89.976628)\nAttributes:\n units: degrees_east\n long_name: longitude\n standard_name: longitude\n axis: Xxarray.DataArray'lon'-89.98array(-89.976628)Coordinates: (0)Attributes: (4)units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :X\n\n\n\nfig = plt.figure(figsize=[14,7]) \nax = plt.axes(projection=ccrs.PlateCarree())\nax.coastlines()\nax.set_extent([-90.5, -89.5, 29.3, 30])\nax.add_feature(cartopy.feature.RIVERS)\n\nplt.scatter(ds_MEaSUREs.lon[106], ds_MEaSUREs.lat[106], lw=1)\nplt.colorbar(label='Interpolated River Heights (m)')\nplt.clim(-10,100)\n\nplt.show()\n\n\n\n\n\n\n\n\n\n\nCombined timeseries plot of river heights from each source\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(df_gauge_data.datetime[0:3823], df_gauge_data.river_height[0:3823], color = 'darkorange')\nds_MEaSUREs.height[106,5657:9439].plot(color='darkblue')\n\nplt.xlabel('Date')\nplt.ylabel('River Height (m)')\nplt.legend(['USGS', 'MEaSUREs'], loc='lower right')\n\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\n\nLooks like the datums need fixing!\nThe USGS gauge datum is 6.58 feet below NAVD88 GEOID12B EPOCH 2010, while the MEaSUREs datum is height above the WGS84 Earth Gravitational Model (EGM 08) geoid, causing this discrepancy.", "crumbs": [ "Tutorials", "Science Data Stories", @@ -3992,7 +3992,7 @@ "href": "notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html#use-case-validation", "title": "Mississippi River Heights Exploration:", "section": "Use Case: Validation", - "text": "Use Case: Validation\nTo validate the MEaSUREs dataset, the authors of the dataset actually compare relative heights between gauges, as opposed to absolute heights, in order to avoid the influence of datum errors and the lack of correspondence between satellite ground tracks and gauge locations. They calculate relative heights by removing the long-term mean of difference between the sample pairs of virtual station heights and the stage measured by the stream gauges. We’ll repeat this method below for completeness and calculate the Nash-Sutcliffe Efficiency (NSE) value.\n\n#create dataframes of the two dataset river heights so values can be subtracted easier (the datasets have different numbers of observations)\ng_height_df = pd.DataFrame()\nm_height_df = pd.DataFrame()\ng_height_df['time'] = df_gauge_data.datetime[0:3823].dt.date\ng_height_df['gauge_height'] = df_gauge_data.river_height[0:3823]\nm_height_df['time'] = ds_MEaSUREs.time[5657:9439].dt.date\nm_height_df['MEaSUREs_height'] = ds_MEaSUREs.height[106,5657:9439]\n#merge into one by time\nheight_df = pd.merge(g_height_df, m_height_df, on='time', how='left')\nheight_df\n\n\n\n\n\n\n\n\n\ntime\ngauge_height\nMEaSUREs_height\n\n\n\n\n0\n2008-10-29\n2.322576\n-0.238960\n\n\n1\n2008-10-30\n2.337816\n-0.209417\n\n\n2\n2008-10-31\n2.368296\n-0.180987\n\n\n3\n2008-11-01\n2.356104\n-0.178015\n\n\n4\n2008-11-02\n2.459736\n-0.177945\n\n\n...\n...\n...\n...\n\n\n3819\n2019-04-13\n5.312664\n1.132784\n\n\n3820\n2019-04-14\n5.236464\n1.152391\n\n\n3821\n2019-04-15\n5.230368\n1.172064\n\n\n3822\n2019-04-16\n5.221224\n1.192314\n\n\n3823\n2019-04-17\n5.202936\n1.208963\n\n\n\n\n3824 rows × 3 columns\n\n\n\n\n\ndiff = height_df.gauge_height - height_df.MEaSUREs_height\nmean_diff = diff.mean()\nmean_diff\n\n3.451153237576882\n\n\n\nheight_df['relative_gauge_height'] = height_df.gauge_height - mean_diff\n\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(height_df.time, height_df.relative_gauge_height, color = 'darkorange')\nplt.plot(height_df.time, height_df.MEaSUREs_height, color = 'darkblue')\n\nplt.xlabel('Date')\nplt.ylabel('River Height (m)')\nplt.legend(['USGS', 'MEaSUREs'], loc='lower right')\n\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\nNash Sutcliffe Efficiency\n\nNSE = 1-(np.sum((height_df.MEaSUREs_height-height_df.relative_gauge_height)**2)/np.sum((height_df.relative_gauge_height-np.mean(height_df.relative_gauge_height))**2))\nNSE\n\n-0.2062487355865772\n\n\nNSE for Oct 2013 - Sept 2014 water year:\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(height_df.time[1799:2163], height_df.relative_gauge_height[1799:2163], color = 'darkorange')\nplt.plot(height_df.time[1799:2163], height_df.MEaSUREs_height[1799:2163], color = 'darkblue')\n\nplt.xlabel('Date')\nplt.ylabel('River Height (m)')\nplt.legend(['USGS', 'MEaSUREs'], loc='lower right')\n\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\nNSE_2014 = 1-(np.sum((height_df.MEaSUREs_height[1799:2163]-height_df.relative_gauge_height[1799:2163])**2)/np.sum((height_df.relative_gauge_height[1799:2163]-np.mean(height_df.relative_gauge_height[1799:2163]))**2))\nNSE_2014\n\n0.18294061649986848\n\n\n\n\nPossible Explanations for discrepancies\n\nMultiple satellites, different return periods\nData interpolation\nSatellite tracks instead of swaths like SWOT will have, spatial interpolation\nRadar altimeter performance varies, was not designed to measure rivers\n\nMEaSUREs is comprised of the Global River Radar Altimeter Time Series (GRRATS) 1km/daily interpolation river heights from ERS1, ERS2, TOPEX/Poseidon, OSTM/Jason-2, Envisat, and Jason-3 that are interpolated and processed to create continuous heights for the study over the temporal range of the altimeters used. Each satellite has differing return periods (ie. Jason has a 10-day revist, Envisat 35 days) so to fill the data gaps, perhaps much needed to be interpolated and caused misalignment. In addition, the satellite tracks of these altimeter satellites do not capture entire river reaches with wide swath tracks like the Surface Water and Ocean Topography (SWOT) mission will do in the future. Thus locations observed among satellites may be different and data interpolated spatially, increasing errors. Also, radar altimeter performance varies dramatically across rivers and across Virtual Stations, as the creators of the dataset mention in the guidebook.\nIn addition, the authors note that the Mississippi NSE values ranged from -0.22 to 0.96 with an average of 0.43 when evaluating the dataset, so it looks like we unintentionally honed into one of the stations with the worst statistics on the Mississippi River.", + "text": "Use Case: Validation\nTo validate the MEaSUREs dataset, the authors of the dataset actually compare relative heights between gauges, as opposed to absolute heights, in order to avoid the influence of datum errors and the lack of correspondence between satellite ground tracks and gauge locations. They calculate relative heights by removing the long-term mean of difference between the sample pairs of virtual station heights and the stage measured by the stream gauges. We’ll repeat this method below for completeness and calculate the Nash-Sutcliffe Efficiency (NSE) value.\n\n#create dataframes of the two dataset river heights so values can be subtracted easier (the datasets have different numbers of observations)\ng_height_df = pd.DataFrame()\nm_height_df = pd.DataFrame()\ng_height_df['time'] = df_gauge_data.datetime[0:3823].dt.date\ng_height_df['gauge_height'] = df_gauge_data.river_height[0:3823]\nm_height_df['time'] = ds_MEaSUREs.time[5657:9439].dt.date\nm_height_df['MEaSUREs_height'] = ds_MEaSUREs.height[106,5657:9439]\n#merge into one by time\nheight_df = pd.merge(g_height_df, m_height_df, on='time', how='left')\nheight_df\n\n\n\n\n\n\n\n\ntime\ngauge_height\nMEaSUREs_height\n\n\n\n\n0\n2008-10-29\n2.322576\n-0.238960\n\n\n1\n2008-10-30\n2.337816\n-0.209417\n\n\n2\n2008-10-31\n2.368296\n-0.180987\n\n\n3\n2008-11-01\n2.356104\n-0.178015\n\n\n4\n2008-11-02\n2.459736\n-0.177945\n\n\n...\n...\n...\n...\n\n\n3819\n2019-04-13\n5.312664\n1.132784\n\n\n3820\n2019-04-14\n5.236464\n1.152391\n\n\n3821\n2019-04-15\n5.230368\n1.172064\n\n\n3822\n2019-04-16\n5.221224\n1.192314\n\n\n3823\n2019-04-17\n5.202936\n1.208963\n\n\n\n\n3824 rows × 3 columns\n\n\n\n\ndiff = height_df.gauge_height - height_df.MEaSUREs_height\nmean_diff = diff.mean()\nmean_diff\n\n3.451153237576882\n\n\n\nheight_df['relative_gauge_height'] = height_df.gauge_height - mean_diff\n\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(height_df.time, height_df.relative_gauge_height, color = 'darkorange')\nplt.plot(height_df.time, height_df.MEaSUREs_height, color = 'darkblue')\n\nplt.xlabel('Date')\nplt.ylabel('River Height (m)')\nplt.legend(['USGS', 'MEaSUREs'], loc='lower right')\n\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\nNash Sutcliffe Efficiency\n\nNSE = 1-(np.sum((height_df.MEaSUREs_height-height_df.relative_gauge_height)**2)/np.sum((height_df.relative_gauge_height-np.mean(height_df.relative_gauge_height))**2))\nNSE\n\n-0.2062487355865772\n\n\nNSE for Oct 2013 - Sept 2014 water year:\n\nfig = plt.figure(figsize=[14,7]) \nplt.plot(height_df.time[1799:2163], height_df.relative_gauge_height[1799:2163], color = 'darkorange')\nplt.plot(height_df.time[1799:2163], height_df.MEaSUREs_height[1799:2163], color = 'darkblue')\n\nplt.xlabel('Date')\nplt.ylabel('River Height (m)')\nplt.legend(['USGS', 'MEaSUREs'], loc='lower right')\n\nplt.grid()\nplt.show()\n\n\n\n\n\n\n\n\n\nNSE_2014 = 1-(np.sum((height_df.MEaSUREs_height[1799:2163]-height_df.relative_gauge_height[1799:2163])**2)/np.sum((height_df.relative_gauge_height[1799:2163]-np.mean(height_df.relative_gauge_height[1799:2163]))**2))\nNSE_2014\n\n0.18294061649986848\n\n\n\n\nPossible Explanations for discrepancies\n\nMultiple satellites, different return periods\nData interpolation\nSatellite tracks instead of swaths like SWOT will have, spatial interpolation\nRadar altimeter performance varies, was not designed to measure rivers\n\nMEaSUREs is comprised of the Global River Radar Altimeter Time Series (GRRATS) 1km/daily interpolation river heights from ERS1, ERS2, TOPEX/Poseidon, OSTM/Jason-2, Envisat, and Jason-3 that are interpolated and processed to create continuous heights for the study over the temporal range of the altimeters used. Each satellite has differing return periods (ie. Jason has a 10-day revist, Envisat 35 days) so to fill the data gaps, perhaps much needed to be interpolated and caused misalignment. In addition, the satellite tracks of these altimeter satellites do not capture entire river reaches with wide swath tracks like the Surface Water and Ocean Topography (SWOT) mission will do in the future. Thus locations observed among satellites may be different and data interpolated spatially, increasing errors. Also, radar altimeter performance varies dramatically across rivers and across Virtual Stations, as the creators of the dataset mention in the guidebook.\nIn addition, the authors note that the Mississippi NSE values ranged from -0.22 to 0.96 with an average of 0.43 when evaluating the dataset, so it looks like we unintentionally honed into one of the stations with the worst statistics on the Mississippi River.", "crumbs": [ "Tutorials", "Science Data Stories", @@ -4068,7 +4068,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html#liquid-water-equivalent-lwe-thickness-grace-grace-fo", "title": "Amazon Estuary Exploration:", "section": "Liquid Water Equivalent (LWE) Thickness (GRACE & GRACE-FO)", - "text": "Liquid Water Equivalent (LWE) Thickness (GRACE & GRACE-FO)\n\nSearch for GRACE LWE Thickness data\nSuppose we are interested in LWE data from the dataset (DOI:10.5067/TEMSC-3JC63) described on this PO.DAAC dataset landing page: https://podaac.jpl.nasa.gov/dataset/TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3 From the landing page, we see the dataset Short Name under the Information tab. This is what we will be using to search for the collection with earthaccess.\nYou can also access the short name of the dataset through Earthdata search at: https://search.earthdata.nasa.gov.\n\n#search for the granules using the short name\ngrace_results = earthaccess.search_data(short_name=\"TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3\")\n\nGranules found: 1\n\n\n\n\nOpen the .nc file in the s3 bucket and load it into an xarray dataset\n\nds_GRACE = xr.open_mfdataset(earthaccess.open([grace_results[0]]), engine='h5netcdf')\nds_GRACE\n\n Opening 1 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (lon: 720, lat: 360, time: 219, bounds: 2)\nCoordinates:\n * lon (lon) float64 0.25 0.75 1.25 1.75 ... 358.2 358.8 359.2 359.8\n * lat (lat) float64 -89.75 -89.25 -88.75 ... 88.75 89.25 89.75\n * time (time) datetime64[ns] 2002-04-17T12:00:00 ... 2023-03-16T1...\nDimensions without coordinates: bounds\nData variables:\n lwe_thickness (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n uncertainty (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n lat_bounds (lat, bounds) float64 dask.array<chunksize=(360, 2), meta=np.ndarray>\n lon_bounds (lon, bounds) float64 dask.array<chunksize=(720, 2), meta=np.ndarray>\n time_bounds (time, bounds) datetime64[ns] dask.array<chunksize=(219, 2), meta=np.ndarray>\n land_mask (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n scale_factor (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n mascon_ID (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\nAttributes: (12/53)\n Conventions: CF-1.6, ACDD-1.3, ISO 8601\n Metadata_Conventions: Unidata Dataset Discovery v1.0\n standard_name_vocabulary: NetCDF Climate and Forecast (CF) Metadata ...\n title: JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRI\n summary: Monthly gravity solutions from GRACE and G...\n keywords: Solid Earth, Geodetics/Gravity, Gravity, l...\n ... ...\n C_30_substitution: TN-14; Loomis et al., 2019, Geophys. Res. ...\n user_note_1: The accelerometer on the GRACE-B spacecraf...\n user_note_2: The accelerometer on the GRACE-D spacecraf...\n journal_reference: Watkins, M. M., D. N. Wiese, D.-N. Yuan, C...\n CRI_filter_journal_reference: Wiese, D. N., F. W. Landerer, and M. M. Wa...\n date_created: 2023-05-22T06:05:03Zxarray.DatasetDimensions:lon: 720lat: 360time: 219bounds: 2Coordinates: (3)lon(lon)float640.25 0.75 1.25 ... 359.2 359.8units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :Xvalid_min :0.25valid_max :359.75bounds :lon_boundsarray([2.5000e-01, 7.5000e-01, 1.2500e+00, ..., 3.5875e+02, 3.5925e+02,\n 3.5975e+02])lat(lat)float64-89.75 -89.25 ... 89.25 89.75units :degrees_northlong_name :latitudestandard_name :latitudeaxis :Yvalid_min :-89.75valid_max :89.75bounds :lat_boundsarray([-89.75, -89.25, -88.75, ..., 88.75, 89.25, 89.75])time(time)datetime64[ns]2002-04-17T12:00:00 ... 2023-03-...long_name :timestandard_name :timeaxis :Tbounds :time_boundsarray(['2002-04-17T12:00:00.000000000', '2002-05-10T12:00:00.000000000',\n '2002-08-16T12:00:00.000000000', ..., '2023-01-16T12:00:00.000000000',\n '2023-02-15T00:00:00.000000000', '2023-03-16T12:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (8)lwe_thickness(time, lat, lon)float64dask.array<chunksize=(219, 360, 720), meta=np.ndarray>units :cmlong_name :Liquid_Water_Equivalent_Thicknessstandard_name :Liquid_Water_Equivalent_Thicknessgrid_mapping :WGS84valid_min :-1986.9763606523888valid_max :965.4782725418918comment :Coastline Resolution Improvement (CRI) filter is applied\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nuncertainty\n\n\n(time, lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ncm\n\nlong_name :\n\nuncertainty\n\nstandard_name :\n\nuncertainty\n\ngrid_mapping :\n\nWGS84\n\nvalid_min :\n\n0.15854006805783352\n\nvalid_max :\n\n53.34469598560085\n\ncomment :\n\n1-sigma uncertainty: not for each 0.5 degree grid cell, but for each 3-degree mascon estimate\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nlat_bounds\n\n\n(lat, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude boundaries\n\nunits :\n\ndegrees_north\n\ncomment :\n\nlatitude values at the north and south bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.62 kiB\n5.62 kiB\n\n\nShape\n(360, 2)\n(360, 2)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2 360\n\n\n\n\n\n\n\n\nlon_bounds\n\n\n(lon, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(720, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude boundaries\n\nunits :\n\ndegrees_east\n\ncomment :\n\nlongitude values at the west and east bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.25 kiB\n11.25 kiB\n\n\nShape\n(720, 2)\n(720, 2)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2 720\n\n\n\n\n\n\n\n\ntime_bounds\n\n\n(time, bounds)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(219, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime boundaries\n\ncomment :\n\ntime bounds for each time value, i.e. the first day and last day included in the monthly solution\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.42 kiB\n3.42 kiB\n\n\nShape\n(219, 2)\n(219, 2)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2 219\n\n\n\n\n\n\n\n\nland_mask\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nbinary\n\nlong_name :\n\nLand_Mask\n\nstandard_name :\n\nLand_Mask\n\ndescription :\n\nLand Mask that was used with the CRI filter\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nscale_factor\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nScale_Factor_CRI\n\nstandard_name :\n\nScale_Factor_CRI\n\nvalid_min :\n\n-99999.0\n\nvalid_max :\n\n24.133988467789724\n\ndescription :\n\nGridded scale factors to be used with mascon solution that has the CRI filter applied; based on CLM data from 2002-2009\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nmascon_ID\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nMascon_Identifier\n\nstandard_name :\n\nMascon_ID\n\nvalid_min :\n\n1\n\nvalid_max :\n\n4551\n\ndescription :\n\nMascon identifier mapped to the grid\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\nIndexes: (3)lonPandasIndexPandasIndex(Index([ 0.25, 0.75, 1.25, 1.75, 2.25, 2.75, 3.25, 3.75, 4.25,\n 4.75,\n ...\n 355.25, 355.75, 356.25, 356.75, 357.25, 357.75, 358.25, 358.75, 359.25,\n 359.75],\n dtype='float64', name='lon', length=720))latPandasIndexPandasIndex(Index([-89.75, -89.25, -88.75, -88.25, -87.75, -87.25, -86.75, -86.25, -85.75,\n -85.25,\n ...\n 85.25, 85.75, 86.25, 86.75, 87.25, 87.75, 88.25, 88.75, 89.25,\n 89.75],\n dtype='float64', name='lat', length=360))timePandasIndexPandasIndex(DatetimeIndex(['2002-04-17 12:00:00', '2002-05-10 12:00:00',\n '2002-08-16 12:00:00', '2002-09-16 00:00:00',\n '2002-10-16 12:00:00', '2002-11-16 00:00:00',\n '2002-12-16 12:00:00', '2003-01-16 12:00:00',\n '2003-02-15 00:00:00', '2003-03-16 12:00:00',\n ...\n '2022-06-16 00:00:00', '2022-07-16 12:00:00',\n '2022-08-16 12:00:00', '2022-09-16 00:00:00',\n '2022-10-16 12:00:00', '2022-11-16 00:00:00',\n '2022-12-16 12:00:00', '2023-01-16 12:00:00',\n '2023-02-15 00:00:00', '2023-03-16 12:00:00'],\n dtype='datetime64[ns]', name='time', length=219, freq=None))Attributes: (53)Conventions :CF-1.6, ACDD-1.3, ISO 8601Metadata_Conventions :Unidata Dataset Discovery v1.0standard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Convention-1.6title :JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRIsummary :Monthly gravity solutions from GRACE and GRACE-FO as determined from the JPL RL06.1Mv03 mascon solution - with CRI filter appliedkeywords :Solid Earth, Geodetics/Gravity, Gravity, liquid_water_equivalent_thicknesskeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsplatform :GRACE and GRACE-FOinstitution :NASA/JPLcreator_name :David Wiesecreator_email :grace@podaac.jpl.nasa.govcreator_url :https://grace.jpl.nasa.govcreator_type :groupcreator_institution :NASA/JPLpublisher_name :Physical Oceanography Distributed Active Archive Centerpublisher_email :podaac@jpl.nasa.govpublisher_url :https://podaac.jpl.nasa.govpublisher_type :grouppublisher_institution :NASA/JPLproject :NASA Gravity Recovery and Climate Experiment (GRACE) and NASA Gravity Recovery and Climate Experiment Follow-On (GRACE-FO)program :NASA Earth Science System Pathfinder and NASA Earth Systematic Missions Programid :10.5067/TEMSC-3JC62naming_authority :org.doi.dxsource :GRACE and GRACE-FO JPL RL06.1Mv03-CRIprocessing_level :2 and 3acknowledgement :GRACE is a joint mission of NASA (USA) and DLR (Germany). GRACE-FO is a joint mission of NASA (USA) and the German Research Center for Geosciences (GFZ). Use the digital object identifier provided in the id attribute when citing this data. See https://podaac.jpl.nasa.gov/CitingPODAAClicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policyproduct_version :v3.0time_epoch :2002-01-01T00:00:00Ztime_coverage_start :2002-04-16T00:00:00Ztime_coverage_end :2023-03-16T23:59:59Zgeospatial_lat_min :-89.75geospatial_lat_max :89.75geospatial_lat_units :degrees_northgeospatial_lat_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconsgeospatial_lon_min :0.25geospatial_lon_max :359.75geospatial_lon_units :degrees_eastgeospatial_lon_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconstime_mean_removed :2004.000 to 2009.999months_missing :2002-06;2002-07;2003-06;2011-01;2011-06;2012-05;2012-10;2013-03;2013-08;2013-09;2014-02;2014-07;2014-12;2015-06;2015-10;2015-11;2016-04;2016-09;2016-10;2017-02;2017-07;2017-08;2017-09;2017-10;2017-11;2017-12;2018-01;2018-02;2018-03;2018-04;2018-05;2018-08-2018-09postprocess_1 : OCEAN_ATMOSPHERE_DEALIAS_MODEL (GAD), MONTHLY_AVE, ADDED BACK TO OCEAN PIXELS ONLYpostprocess_2 :Water density used to convert to equivalent water height: 1000 kg/m^3postprocess_3 :Coastline Resolution Improvement (CRI) filter has been applied to separate land/ocean mass within mascons that span coastlinesGIA_removed :ICE6G-D; Peltier, W. R., D. F. Argus, and R. Drummond (2018) Comment on the paper by Purcell et al. 2016 entitled An assessment of ICE-6G_C (VM5a) glacial isostatic adjustment model, J. Geophys. Res. Solid Earth, 122.geocenter_correction :We use a version of TN-13 based on the JPL masconsC_20_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929C_30_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929. This substitution is made for all months after August 2016.user_note_1 :The accelerometer on the GRACE-B spacecraft was turned off after August 2016. After this date, the accelerometer on GRACE-A was used to derive the non-gravitational accelerations acting on GRACE-B using a transplant procedure. This has led to a subsequent degradation in the quality of the gravity fields derived. The uncertainties in this file have been scaled to accomodate this degradation.user_note_2 :The accelerometer on the GRACE-D spacecraft began performing sub-optimally after June 21, 2018. After this date, the accelerometer on GRACE-C is used to derive the non-gravitational accelerations acting on GRACE-D using a transplant procedure. The uncertainties in the file have been scaled to accomodate this degradation using the current best state of knowledge.journal_reference :Watkins, M. M., D. N. Wiese, D.-N. Yuan, C. Boening, and F. W. Landerer (2015) Improved methods for observing Earth's time variable mass distribution with GRACE using spherical cap mascons, J. Geophys. Res., 120, doi:10.1002/2014JB011547. CRI_filter_journal_reference :Wiese, D. N., F. W. Landerer, and M. M. Watkins (2016) Quantifying and reducing leakage errors in the JPL RL05M GRACE mascon solution, Water Resour. Res., 52, doi:10.1002/2016WR019344. date_created :2023-05-22T06:05:03Z", + "text": "Liquid Water Equivalent (LWE) Thickness (GRACE & GRACE-FO)\n\nSearch for GRACE LWE Thickness data\nSuppose we are interested in LWE data from the dataset (DOI:10.5067/TEMSC-3JC63) described on this PO.DAAC dataset landing page: https://podaac.jpl.nasa.gov/dataset/TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3 From the landing page, we see the dataset Short Name under the Information tab. This is what we will be using to search for the collection with earthaccess.\nYou can also access the short name of the dataset through Earthdata search at: https://search.earthdata.nasa.gov.\n\n#search for the granules using the short name\ngrace_results = earthaccess.search_data(short_name=\"TELLUS_GRAC-GRFO_MASCON_CRI_GRID_RL06.1_V3\")\n\nGranules found: 1\n\n\n\n\nOpen the .nc file in the s3 bucket and load it into an xarray dataset\n\nds_GRACE = xr.open_mfdataset(earthaccess.open([grace_results[0]]), engine='h5netcdf')\nds_GRACE\n\n Opening 1 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (lon: 720, lat: 360, time: 219, bounds: 2)\nCoordinates:\n * lon (lon) float64 0.25 0.75 1.25 1.75 ... 358.2 358.8 359.2 359.8\n * lat (lat) float64 -89.75 -89.25 -88.75 ... 88.75 89.25 89.75\n * time (time) datetime64[ns] 2002-04-17T12:00:00 ... 2023-03-16T1...\nDimensions without coordinates: bounds\nData variables:\n lwe_thickness (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n uncertainty (time, lat, lon) float64 dask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n lat_bounds (lat, bounds) float64 dask.array<chunksize=(360, 2), meta=np.ndarray>\n lon_bounds (lon, bounds) float64 dask.array<chunksize=(720, 2), meta=np.ndarray>\n time_bounds (time, bounds) datetime64[ns] dask.array<chunksize=(219, 2), meta=np.ndarray>\n land_mask (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n scale_factor (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\n mascon_ID (lat, lon) float64 dask.array<chunksize=(360, 720), meta=np.ndarray>\nAttributes: (12/53)\n Conventions: CF-1.6, ACDD-1.3, ISO 8601\n Metadata_Conventions: Unidata Dataset Discovery v1.0\n standard_name_vocabulary: NetCDF Climate and Forecast (CF) Metadata ...\n title: JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRI\n summary: Monthly gravity solutions from GRACE and G...\n keywords: Solid Earth, Geodetics/Gravity, Gravity, l...\n ... ...\n C_30_substitution: TN-14; Loomis et al., 2019, Geophys. Res. ...\n user_note_1: The accelerometer on the GRACE-B spacecraf...\n user_note_2: The accelerometer on the GRACE-D spacecraf...\n journal_reference: Watkins, M. M., D. N. Wiese, D.-N. Yuan, C...\n CRI_filter_journal_reference: Wiese, D. N., F. W. Landerer, and M. M. Wa...\n date_created: 2023-05-22T06:05:03Zxarray.DatasetDimensions:lon: 720lat: 360time: 219bounds: 2Coordinates: (3)lon(lon)float640.25 0.75 1.25 ... 359.2 359.8units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :Xvalid_min :0.25valid_max :359.75bounds :lon_boundsarray([2.5000e-01, 7.5000e-01, 1.2500e+00, ..., 3.5875e+02, 3.5925e+02,\n 3.5975e+02])lat(lat)float64-89.75 -89.25 ... 89.25 89.75units :degrees_northlong_name :latitudestandard_name :latitudeaxis :Yvalid_min :-89.75valid_max :89.75bounds :lat_boundsarray([-89.75, -89.25, -88.75, ..., 88.75, 89.25, 89.75])time(time)datetime64[ns]2002-04-17T12:00:00 ... 2023-03-...long_name :timestandard_name :timeaxis :Tbounds :time_boundsarray(['2002-04-17T12:00:00.000000000', '2002-05-10T12:00:00.000000000',\n '2002-08-16T12:00:00.000000000', ..., '2023-01-16T12:00:00.000000000',\n '2023-02-15T00:00:00.000000000', '2023-03-16T12:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (8)lwe_thickness(time, lat, lon)float64dask.array<chunksize=(219, 360, 720), meta=np.ndarray>units :cmlong_name :Liquid_Water_Equivalent_Thicknessstandard_name :Liquid_Water_Equivalent_Thicknessgrid_mapping :WGS84valid_min :-1986.9763606523888valid_max :965.4782725418918comment :Coastline Resolution Improvement (CRI) filter is applied\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nuncertainty\n\n\n(time, lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(219, 360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ncm\n\nlong_name :\n\nuncertainty\n\nstandard_name :\n\nuncertainty\n\ngrid_mapping :\n\nWGS84\n\nvalid_min :\n\n0.15854006805783352\n\nvalid_max :\n\n53.34469598560085\n\ncomment :\n\n1-sigma uncertainty: not for each 0.5 degree grid cell, but for each 3-degree mascon estimate\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n433.08 MiB\n433.08 MiB\n\n\nShape\n(219, 360, 720)\n(219, 360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360 219\n\n\n\n\n\n\n\n\nlat_bounds\n\n\n(lat, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude boundaries\n\nunits :\n\ndegrees_north\n\ncomment :\n\nlatitude values at the north and south bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n5.62 kiB\n5.62 kiB\n\n\nShape\n(360, 2)\n(360, 2)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2 360\n\n\n\n\n\n\n\n\nlon_bounds\n\n\n(lon, bounds)\n\n\nfloat64\n\n\ndask.array<chunksize=(720, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlongitude boundaries\n\nunits :\n\ndegrees_east\n\ncomment :\n\nlongitude values at the west and east bounds of each pixel\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n11.25 kiB\n11.25 kiB\n\n\nShape\n(720, 2)\n(720, 2)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 2 720\n\n\n\n\n\n\n\n\ntime_bounds\n\n\n(time, bounds)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(219, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime boundaries\n\ncomment :\n\ntime bounds for each time value, i.e. the first day and last day included in the monthly solution\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.42 kiB\n3.42 kiB\n\n\nShape\n(219, 2)\n(219, 2)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 2 219\n\n\n\n\n\n\n\n\nland_mask\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nbinary\n\nlong_name :\n\nLand_Mask\n\nstandard_name :\n\nLand_Mask\n\ndescription :\n\nLand Mask that was used with the CRI filter\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nscale_factor\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nScale_Factor_CRI\n\nstandard_name :\n\nScale_Factor_CRI\n\nvalid_min :\n\n-99999.0\n\nvalid_max :\n\n24.133988467789724\n\ndescription :\n\nGridded scale factors to be used with mascon solution that has the CRI filter applied; based on CLM data from 2002-2009\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\n\n\n\nmascon_ID\n\n\n(lat, lon)\n\n\nfloat64\n\n\ndask.array<chunksize=(360, 720), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndimensionless\n\nlong_name :\n\nMascon_Identifier\n\nstandard_name :\n\nMascon_ID\n\nvalid_min :\n\n1\n\nvalid_max :\n\n4551\n\ndescription :\n\nMascon identifier mapped to the grid\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.98 MiB\n1.98 MiB\n\n\nShape\n(360, 720)\n(360, 720)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 720 360\n\n\n\n\n\nIndexes: (3)lonPandasIndexPandasIndex(Index([ 0.25, 0.75, 1.25, 1.75, 2.25, 2.75, 3.25, 3.75, 4.25,\n 4.75,\n ...\n 355.25, 355.75, 356.25, 356.75, 357.25, 357.75, 358.25, 358.75, 359.25,\n 359.75],\n dtype='float64', name='lon', length=720))latPandasIndexPandasIndex(Index([-89.75, -89.25, -88.75, -88.25, -87.75, -87.25, -86.75, -86.25, -85.75,\n -85.25,\n ...\n 85.25, 85.75, 86.25, 86.75, 87.25, 87.75, 88.25, 88.75, 89.25,\n 89.75],\n dtype='float64', name='lat', length=360))timePandasIndexPandasIndex(DatetimeIndex(['2002-04-17 12:00:00', '2002-05-10 12:00:00',\n '2002-08-16 12:00:00', '2002-09-16 00:00:00',\n '2002-10-16 12:00:00', '2002-11-16 00:00:00',\n '2002-12-16 12:00:00', '2003-01-16 12:00:00',\n '2003-02-15 00:00:00', '2003-03-16 12:00:00',\n ...\n '2022-06-16 00:00:00', '2022-07-16 12:00:00',\n '2022-08-16 12:00:00', '2022-09-16 00:00:00',\n '2022-10-16 12:00:00', '2022-11-16 00:00:00',\n '2022-12-16 12:00:00', '2023-01-16 12:00:00',\n '2023-02-15 00:00:00', '2023-03-16 12:00:00'],\n dtype='datetime64[ns]', name='time', length=219, freq=None))Attributes: (53)Conventions :CF-1.6, ACDD-1.3, ISO 8601Metadata_Conventions :Unidata Dataset Discovery v1.0standard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Convention-1.6title :JPL GRACE and GRACE-FO MASCON RL06.1Mv03 CRIsummary :Monthly gravity solutions from GRACE and GRACE-FO as determined from the JPL RL06.1Mv03 mascon solution - with CRI filter appliedkeywords :Solid Earth, Geodetics/Gravity, Gravity, liquid_water_equivalent_thicknesskeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsplatform :GRACE and GRACE-FOinstitution :NASA/JPLcreator_name :David Wiesecreator_email :grace@podaac.jpl.nasa.govcreator_url :https://grace.jpl.nasa.govcreator_type :groupcreator_institution :NASA/JPLpublisher_name :Physical Oceanography Distributed Active Archive Centerpublisher_email :podaac@jpl.nasa.govpublisher_url :https://podaac.jpl.nasa.govpublisher_type :grouppublisher_institution :NASA/JPLproject :NASA Gravity Recovery and Climate Experiment (GRACE) and NASA Gravity Recovery and Climate Experiment Follow-On (GRACE-FO)program :NASA Earth Science System Pathfinder and NASA Earth Systematic Missions Programid :10.5067/TEMSC-3JC62naming_authority :org.doi.dxsource :GRACE and GRACE-FO JPL RL06.1Mv03-CRIprocessing_level :2 and 3acknowledgement :GRACE is a joint mission of NASA (USA) and DLR (Germany). GRACE-FO is a joint mission of NASA (USA) and the German Research Center for Geosciences (GFZ). Use the digital object identifier provided in the id attribute when citing this data. See https://podaac.jpl.nasa.gov/CitingPODAAClicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policyproduct_version :v3.0time_epoch :2002-01-01T00:00:00Ztime_coverage_start :2002-04-16T00:00:00Ztime_coverage_end :2023-03-16T23:59:59Zgeospatial_lat_min :-89.75geospatial_lat_max :89.75geospatial_lat_units :degrees_northgeospatial_lat_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconsgeospatial_lon_min :0.25geospatial_lon_max :359.75geospatial_lon_units :degrees_eastgeospatial_lon_resolution :0.5 degree grid; however the native resolution of the data is 3-degree equal-area masconstime_mean_removed :2004.000 to 2009.999months_missing :2002-06;2002-07;2003-06;2011-01;2011-06;2012-05;2012-10;2013-03;2013-08;2013-09;2014-02;2014-07;2014-12;2015-06;2015-10;2015-11;2016-04;2016-09;2016-10;2017-02;2017-07;2017-08;2017-09;2017-10;2017-11;2017-12;2018-01;2018-02;2018-03;2018-04;2018-05;2018-08-2018-09postprocess_1 : OCEAN_ATMOSPHERE_DEALIAS_MODEL (GAD), MONTHLY_AVE, ADDED BACK TO OCEAN PIXELS ONLYpostprocess_2 :Water density used to convert to equivalent water height: 1000 kg/m^3postprocess_3 :Coastline Resolution Improvement (CRI) filter has been applied to separate land/ocean mass within mascons that span coastlinesGIA_removed :ICE6G-D; Peltier, W. R., D. F. Argus, and R. Drummond (2018) Comment on the paper by Purcell et al. 2016 entitled An assessment of ICE-6G_C (VM5a) glacial isostatic adjustment model, J. Geophys. Res. Solid Earth, 122.geocenter_correction :We use a version of TN-13 based on the JPL masconsC_20_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929C_30_substitution :TN-14; Loomis et al., 2019, Geophys. Res. Lett., doi:10.1029/2019GL082929. This substitution is made for all months after August 2016.user_note_1 :The accelerometer on the GRACE-B spacecraft was turned off after August 2016. After this date, the accelerometer on GRACE-A was used to derive the non-gravitational accelerations acting on GRACE-B using a transplant procedure. This has led to a subsequent degradation in the quality of the gravity fields derived. The uncertainties in this file have been scaled to accomodate this degradation.user_note_2 :The accelerometer on the GRACE-D spacecraft began performing sub-optimally after June 21, 2018. After this date, the accelerometer on GRACE-C is used to derive the non-gravitational accelerations acting on GRACE-D using a transplant procedure. The uncertainties in the file have been scaled to accomodate this degradation using the current best state of knowledge.journal_reference :Watkins, M. M., D. N. Wiese, D.-N. Yuan, C. Boening, and F. W. Landerer (2015) Improved methods for observing Earth's time variable mass distribution with GRACE using spherical cap mascons, J. Geophys. Res., 120, doi:10.1002/2014JB011547. CRI_filter_journal_reference :Wiese, D. N., F. W. Landerer, and M. M. Watkins (2016) Quantifying and reducing leakage errors in the JPL RL05M GRACE mascon solution, Water Resour. Res., 52, doi:10.1002/2016WR019344. date_created :2023-05-22T06:05:03Z", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -4081,7 +4081,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html#river-heights-pre-swot-measures", "title": "Amazon Estuary Exploration:", "section": "River heights (Pre-SWOT MEaSUREs)", - "text": "River heights (Pre-SWOT MEaSUREs)\nThe shortname for MEaSUREs is ‘PRESWOT_HYDRO_GRRATS_L2_DAILY_VIRTUAL_STATION_HEIGHTS_V2’ with the concept ID: C2036882359-POCLOUD. The guidebook explains the details of the Pre-SWOT MEaSUREs data.\nOur desired variable is height (meters above EGM2008 geoid) for this exercise, which can be subset by distance and time. Distance represents the distance from the river mouth, in this example, the Amazon estuary. Time is between April 8, 1993 and April 20, 2019.\nTo get the data for the exact area we need, we have set the boundaries of (-74.67188,-4.51279,-51.04688,0.19622) as reflected in our earthaccess data search.\nLet’s again access the netCDF file from an s3 bucket and look at the data structure.\n\n#earthaccess search using our established parameters to only find necessary granules\nMEaSUREs_results = earthaccess.search_data(short_name=\"PRESWOT_HYDRO_GRRATS_L2_DAILY_VIRTUAL_STATION_HEIGHTS_V2\", temporal = (\"1993-04-08\", \"2019-04-20\"), bounding_box=(-74.67188,-4.51279,-51.04688,0.19622))\n\nGranules found: 1\n\n\n\nds_MEaSUREs = xr.open_mfdataset(earthaccess.open([MEaSUREs_results[0]]), engine='h5netcdf')\nds_MEaSUREs\n\n Opening 1 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (X: 3311, Y: 3311, distance: 3311, time: 9469,\n charlength: 26)\nCoordinates:\n * time (time) datetime64[ns] 1993-04-08T15:20:40.665117184 ...\nDimensions without coordinates: X, Y, distance, charlength\nData variables:\n lon (X) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n lat (Y) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n FD (distance) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n height (distance, time) float64 dask.array<chunksize=(3311, 9469), meta=np.ndarray>\n sat (charlength, time) |S1 dask.array<chunksize=(26, 9469), meta=np.ndarray>\n storage (distance, time) float64 dask.array<chunksize=(3311, 9469), meta=np.ndarray>\n IceFlag (time) float64 dask.array<chunksize=(9469,), meta=np.ndarray>\n LakeFlag (distance) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n Storage_uncertainty (distance, time) float64 dask.array<chunksize=(3311, 9469), meta=np.ndarray>\nAttributes: (12/40)\n title: GRRATS (Global River Radar Altimetry Time ...\n Conventions: CF-1.6, ACDD-1.3\n institution: Ohio State University, School of Earth Sci...\n source: MEaSUREs OSU Storage toolbox 2018\n keywords: EARTH SCIENCE,TERRESTRIAL HYDROSPHERE,SURF...\n keywords_vocabulary: Global Change Master Directory (GCMD)\n ... ...\n geospatial_lat_max: -0.6550700975069503\n geospatial_lat_units: degree_north\n geospatial_vertical_max: 92.7681246287056\n geospatial_vertical_min: -3.5634095181633763\n geospatial_vertical_units: m\n geospatial_vertical_positive: upxarray.DatasetDimensions:X: 3311Y: 3311distance: 3311time: 9469charlength: 26Coordinates: (1)time(time)datetime64[ns]1993-04-08T15:20:40.665117184 .....long_name :timestandard_name :timeaxis :Tarray(['1993-04-08T15:20:40.665117184', '1993-04-09T15:20:40.665117184',\n '1993-04-10T15:20:40.665117184', ..., '2019-04-18T03:39:13.243964928',\n '2019-04-19T03:39:13.243964928', '2019-04-20T03:39:13.243964928'],\n dtype='datetime64[ns]')Data variables: (9)lon(X)float64dask.array<chunksize=(3311,), meta=np.ndarray>units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :X\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nlat\n\n\n(Y)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndegrees_north\n\nlong_name :\n\nlatitude\n\nstandard_name :\n\nlatitude\n\naxis :\n\nY\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nFD\n\n\n(distance)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance_from_river_mouth\n\nunits :\n\nkm\n\ncomment :\n\nThis is the distance along the river centerline from the river mouth to this VS.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nheight\n\n\n(distance, time)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nm\n\npositive :\n\nup\n\nlong_name :\n\ninterpolated_heights\n\nstandard_name :\n\nheight\n\nvalid_min :\n\n-3.5634095181633763\n\nvalid_max :\n\n92.7681246287056\n\ncomment :\n\nA time flow distance grid of river water heights with respect to the EGM08 Geoid).-9999 fill values are for missing data, while -9995 fill values are for lakes and reservoirs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n239.20 MiB\n239.20 MiB\n\n\nShape\n(3311, 9469)\n(3311, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 3311\n\n\n\n\n\n\n\n\nsat\n\n\n(charlength, time)\n\n\n|S1\n\n\ndask.array<chunksize=(26, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsatellite\n\ncomment :\n\nThe satellite the measurement is derived from.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n240.42 kiB\n240.42 kiB\n\n\nShape\n(26, 9469)\n(26, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\n|S1 numpy.ndarray\n\n\n\n\n 9469 26\n\n\n\n\n\n\n\n\nstorage\n\n\n(distance, time)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nkm3\n\npositive :\n\nup\n\nlong_name :\n\nriver_channel_storage\n\ncomment :\n\nA time flow distance grid of river channel storage values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n239.20 MiB\n239.20 MiB\n\n\nShape\n(3311, 9469)\n(3311, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 3311\n\n\n\n\n\n\n\n\nIceFlag\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(9469,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nIce_Flag\n\nvalid_range :\n\n0, 1\n\nflag_masks :\n\n1\n\nflag_meaning :\n\nTime of ice cover\n\ncomment :\n\nThis is a flag for masking out times of Ice Cover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n73.98 kiB\n73.98 kiB\n\n\nShape\n(9469,)\n(9469,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 1\n\n\n\n\n\n\n\n\nLakeFlag\n\n\n(distance)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nLake_Flag\n\nvalid_range :\n\n0, 1\n\nflag_masks :\n\n1\n\nflag_meaning :\n\nRiver sections that are lakes or reservoirs\n\ncomment :\n\nThis is a flag for masking out setions that are lakes or reservoirs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nStorage_uncertainty\n\n\n(distance, time)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nkm3\n\npositive :\n\nup\n\nlong_name :\n\nriver_channel_storage_uncertainty\n\ncomment :\n\nA time flow distance grid of river channel storage uncertainty values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n239.20 MiB\n239.20 MiB\n\n\nShape\n(3311, 9469)\n(3311, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 3311\n\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(DatetimeIndex(['1993-04-08 15:20:40.665117184',\n '1993-04-09 15:20:40.665117184',\n '1993-04-10 15:20:40.665117184',\n '1993-04-11 15:20:40.665117184',\n '1993-04-12 15:20:40.665117184',\n '1993-04-13 15:20:40.665117184',\n '1993-04-14 15:20:40.665117184',\n '1993-04-15 15:20:40.665117184',\n '1993-04-16 15:20:40.665117184',\n '1993-04-17 15:20:40.665117184',\n ...\n '2019-04-11 03:39:13.243964928',\n '2019-04-12 03:39:13.243964928',\n '2019-04-13 03:39:13.243964928',\n '2019-04-14 03:39:13.243964928',\n '2019-04-15 03:39:13.243964928',\n '2019-04-16 03:39:13.243964928',\n '2019-04-17 03:39:13.243964928',\n '2019-04-18 03:39:13.243964928',\n '2019-04-19 03:39:13.243964928',\n '2019-04-20 03:39:13.243964928'],\n dtype='datetime64[ns]', name='time', length=9469, freq=None))Attributes: (40)title :GRRATS (Global River Radar Altimetry Time Series)1km daily interpolation for the Amazon RiverConventions :CF-1.6, ACDD-1.3institution :Ohio State University, School of Earth Sciencessource :MEaSUREs OSU Storage toolbox 2018keywords :EARTH SCIENCE,TERRESTRIAL HYDROSPHERE,SURFACE WATER,SURFACE WATER PROCESSES/MEASUREMENTS,STAGE HEIGHTkeywords_vocabulary :Global Change Master Directory (GCMD)cdm_data_type :stationcreator_name :Coss,Stevecreator_email :Coss.31@osu.eduproject :MEaSUREs OSUprogram :NASA Earth Science Data Systems (ESDS)publisher_name :PO.DAAC (Physical Oceanography Distributed Active Archive Center)publisher_email :podaac@podaac.jpl.nasa.govpublisher_url :podaac.jpl.nasa.govpublisher_type :Institutionpublisher_institution :PO.DAACprocessing_level :L2doi :10.5067/PSGRA-DA2V2history :This GRRATS product adds data river surface height data from ERS1, ERS2, TOPEX/Poseidon and Jason-3 to expand the temporal coverage of the product. GRRATS1kd includes interpolated daily 1km resolution height measurements as well as river channel storage measurements. platform :ERS-1(L2),ERS-2(L2),TOPEX/POSEIDON(L2), Jason-1(L2),OSTM/Jason-2(L2),Jason-3(L2),Envisat(L2)platform_vocabulary :NASA/GCMD Platform Keywords. Version 8.6instrument :RA(L2),RA-2(L2),ALT(TOPEX)(L2),POSEIDON-2(L2),POSEIDON-3(L2),POSEIDON-3b(L2)instrument_vocabulary :NASA/GCMD Platform Keywords. Version 8.6references :in review :doi.org/10.5194/essd-2019-84id :GRRATS(Global River Radar Altimeter Time Series) 1km/dailysummary :The Global River Radar Altimeter Time Series (GRRATS) 1km/daily interpolations are river heights from ERS1, ERS2, TOPEX/Poseidon OSTM/Jason-2 Envisat and Jason-3 that are interpolated and processed to create a continuous heights for the study over the temporal range of the altimeters used. The purpose of these heights are to provide satellite altimetric river height data in a form that is more recognizable to the observational community and as a way to get users use to using satellite data for river hydrology.time_coverage_resolution :1 daydate_created :2021-06-30T08:03:41time_coverage_start :1992-04-08T15:20:40time_coverage_end :2018-04-20T03:39:13geospatial_lon_min :-73.35433106652545geospatial_lon_max :-51.0426448887506geospatial_lon_units :degree_eastgeospatial_lat_min :-4.3804275867636875geospatial_lat_max :-0.6550700975069503geospatial_lat_units :degree_northgeospatial_vertical_max :92.7681246287056geospatial_vertical_min :-3.5634095181633763geospatial_vertical_units :mgeospatial_vertical_positive :up\n\n\n\n\nPlot a subset of the data\nPlotting the river distances and associated heights on the map at time t=9069 (March 16, 2018) using plt.\n\nfig = plt.figure(figsize=[11,7]) \nax = plt.axes(projection=ccrs.PlateCarree())\nax.coastlines()\nax.set_extent([-85, -30, -20, 20])\nax.add_feature(cartopy.feature.RIVERS)\n\nplt.scatter(ds_MEaSUREs.lon, ds_MEaSUREs.lat, lw=1, c=ds_MEaSUREs.height[:,9069])\nplt.colorbar(label='Interpolated River Heights (m)')\nplt.clim(-10,100)\n\nplt.show()", + "text": "River heights (Pre-SWOT MEaSUREs)\nThe shortname for MEaSUREs is ‘PRESWOT_HYDRO_GRRATS_L2_DAILY_VIRTUAL_STATION_HEIGHTS_V2’ with the concept ID: C2036882359-POCLOUD. The guidebook explains the details of the Pre-SWOT MEaSUREs data.\nOur desired variable is height (meters above EGM2008 geoid) for this exercise, which can be subset by distance and time. Distance represents the distance from the river mouth, in this example, the Amazon estuary. Time is between April 8, 1993 and April 20, 2019.\nTo get the data for the exact area we need, we have set the boundaries of (-74.67188,-4.51279,-51.04688,0.19622) as reflected in our earthaccess data search.\nLet’s again access the netCDF file from an s3 bucket and look at the data structure.\n\n#earthaccess search using our established parameters to only find necessary granules\nMEaSUREs_results = earthaccess.search_data(short_name=\"PRESWOT_HYDRO_GRRATS_L2_DAILY_VIRTUAL_STATION_HEIGHTS_V2\", temporal = (\"1993-04-08\", \"2019-04-20\"), bounding_box=(-74.67188,-4.51279,-51.04688,0.19622))\n\nGranules found: 1\n\n\n\nds_MEaSUREs = xr.open_mfdataset(earthaccess.open([MEaSUREs_results[0]]), engine='h5netcdf')\nds_MEaSUREs\n\n Opening 1 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (X: 3311, Y: 3311, distance: 3311, time: 9469,\n charlength: 26)\nCoordinates:\n * time (time) datetime64[ns] 1993-04-08T15:20:40.665117184 ...\nDimensions without coordinates: X, Y, distance, charlength\nData variables:\n lon (X) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n lat (Y) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n FD (distance) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n height (distance, time) float64 dask.array<chunksize=(3311, 9469), meta=np.ndarray>\n sat (charlength, time) |S1 dask.array<chunksize=(26, 9469), meta=np.ndarray>\n storage (distance, time) float64 dask.array<chunksize=(3311, 9469), meta=np.ndarray>\n IceFlag (time) float64 dask.array<chunksize=(9469,), meta=np.ndarray>\n LakeFlag (distance) float64 dask.array<chunksize=(3311,), meta=np.ndarray>\n Storage_uncertainty (distance, time) float64 dask.array<chunksize=(3311, 9469), meta=np.ndarray>\nAttributes: (12/40)\n title: GRRATS (Global River Radar Altimetry Time ...\n Conventions: CF-1.6, ACDD-1.3\n institution: Ohio State University, School of Earth Sci...\n source: MEaSUREs OSU Storage toolbox 2018\n keywords: EARTH SCIENCE,TERRESTRIAL HYDROSPHERE,SURF...\n keywords_vocabulary: Global Change Master Directory (GCMD)\n ... ...\n geospatial_lat_max: -0.6550700975069503\n geospatial_lat_units: degree_north\n geospatial_vertical_max: 92.7681246287056\n geospatial_vertical_min: -3.5634095181633763\n geospatial_vertical_units: m\n geospatial_vertical_positive: upxarray.DatasetDimensions:X: 3311Y: 3311distance: 3311time: 9469charlength: 26Coordinates: (1)time(time)datetime64[ns]1993-04-08T15:20:40.665117184 .....long_name :timestandard_name :timeaxis :Tarray(['1993-04-08T15:20:40.665117184', '1993-04-09T15:20:40.665117184',\n '1993-04-10T15:20:40.665117184', ..., '2019-04-18T03:39:13.243964928',\n '2019-04-19T03:39:13.243964928', '2019-04-20T03:39:13.243964928'],\n dtype='datetime64[ns]')Data variables: (9)lon(X)float64dask.array<chunksize=(3311,), meta=np.ndarray>units :degrees_eastlong_name :longitudestandard_name :longitudeaxis :X\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nlat\n\n\n(Y)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\ndegrees_north\n\nlong_name :\n\nlatitude\n\nstandard_name :\n\nlatitude\n\naxis :\n\nY\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nFD\n\n\n(distance)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndistance_from_river_mouth\n\nunits :\n\nkm\n\ncomment :\n\nThis is the distance along the river centerline from the river mouth to this VS.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nheight\n\n\n(distance, time)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nm\n\npositive :\n\nup\n\nlong_name :\n\ninterpolated_heights\n\nstandard_name :\n\nheight\n\nvalid_min :\n\n-3.5634095181633763\n\nvalid_max :\n\n92.7681246287056\n\ncomment :\n\nA time flow distance grid of river water heights with respect to the EGM08 Geoid).-9999 fill values are for missing data, while -9995 fill values are for lakes and reservoirs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n239.20 MiB\n239.20 MiB\n\n\nShape\n(3311, 9469)\n(3311, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 3311\n\n\n\n\n\n\n\n\nsat\n\n\n(charlength, time)\n\n\n|S1\n\n\ndask.array<chunksize=(26, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsatellite\n\ncomment :\n\nThe satellite the measurement is derived from.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n240.42 kiB\n240.42 kiB\n\n\nShape\n(26, 9469)\n(26, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\n|S1 numpy.ndarray\n\n\n\n\n 9469 26\n\n\n\n\n\n\n\n\nstorage\n\n\n(distance, time)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nkm3\n\npositive :\n\nup\n\nlong_name :\n\nriver_channel_storage\n\ncomment :\n\nA time flow distance grid of river channel storage values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n239.20 MiB\n239.20 MiB\n\n\nShape\n(3311, 9469)\n(3311, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 3311\n\n\n\n\n\n\n\n\nIceFlag\n\n\n(time)\n\n\nfloat64\n\n\ndask.array<chunksize=(9469,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nIce_Flag\n\nvalid_range :\n\n0, 1\n\nflag_masks :\n\n1\n\nflag_meaning :\n\nTime of ice cover\n\ncomment :\n\nThis is a flag for masking out times of Ice Cover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n73.98 kiB\n73.98 kiB\n\n\nShape\n(9469,)\n(9469,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 1\n\n\n\n\n\n\n\n\nLakeFlag\n\n\n(distance)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311,), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nLake_Flag\n\nvalid_range :\n\n0, 1\n\nflag_masks :\n\n1\n\nflag_meaning :\n\nRiver sections that are lakes or reservoirs\n\ncomment :\n\nThis is a flag for masking out setions that are lakes or reservoirs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n25.87 kiB\n25.87 kiB\n\n\nShape\n(3311,)\n(3311,)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 3311 1\n\n\n\n\n\n\n\n\nStorage_uncertainty\n\n\n(distance, time)\n\n\nfloat64\n\n\ndask.array<chunksize=(3311, 9469), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nunits :\n\nkm3\n\npositive :\n\nup\n\nlong_name :\n\nriver_channel_storage_uncertainty\n\ncomment :\n\nA time flow distance grid of river channel storage uncertainty values.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n239.20 MiB\n239.20 MiB\n\n\nShape\n(3311, 9469)\n(3311, 9469)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 9469 3311\n\n\n\n\n\nIndexes: (1)timePandasIndexPandasIndex(DatetimeIndex(['1993-04-08 15:20:40.665117184',\n '1993-04-09 15:20:40.665117184',\n '1993-04-10 15:20:40.665117184',\n '1993-04-11 15:20:40.665117184',\n '1993-04-12 15:20:40.665117184',\n '1993-04-13 15:20:40.665117184',\n '1993-04-14 15:20:40.665117184',\n '1993-04-15 15:20:40.665117184',\n '1993-04-16 15:20:40.665117184',\n '1993-04-17 15:20:40.665117184',\n ...\n '2019-04-11 03:39:13.243964928',\n '2019-04-12 03:39:13.243964928',\n '2019-04-13 03:39:13.243964928',\n '2019-04-14 03:39:13.243964928',\n '2019-04-15 03:39:13.243964928',\n '2019-04-16 03:39:13.243964928',\n '2019-04-17 03:39:13.243964928',\n '2019-04-18 03:39:13.243964928',\n '2019-04-19 03:39:13.243964928',\n '2019-04-20 03:39:13.243964928'],\n dtype='datetime64[ns]', name='time', length=9469, freq=None))Attributes: (40)title :GRRATS (Global River Radar Altimetry Time Series)1km daily interpolation for the Amazon RiverConventions :CF-1.6, ACDD-1.3institution :Ohio State University, School of Earth Sciencessource :MEaSUREs OSU Storage toolbox 2018keywords :EARTH SCIENCE,TERRESTRIAL HYDROSPHERE,SURFACE WATER,SURFACE WATER PROCESSES/MEASUREMENTS,STAGE HEIGHTkeywords_vocabulary :Global Change Master Directory (GCMD)cdm_data_type :stationcreator_name :Coss,Stevecreator_email :Coss.31@osu.eduproject :MEaSUREs OSUprogram :NASA Earth Science Data Systems (ESDS)publisher_name :PO.DAAC (Physical Oceanography Distributed Active Archive Center)publisher_email :podaac@podaac.jpl.nasa.govpublisher_url :podaac.jpl.nasa.govpublisher_type :Institutionpublisher_institution :PO.DAACprocessing_level :L2doi :10.5067/PSGRA-DA2V2history :This GRRATS product adds data river surface height data from ERS1, ERS2, TOPEX/Poseidon and Jason-3 to expand the temporal coverage of the product. GRRATS1kd includes interpolated daily 1km resolution height measurements as well as river channel storage measurements. platform :ERS-1(L2),ERS-2(L2),TOPEX/POSEIDON(L2), Jason-1(L2),OSTM/Jason-2(L2),Jason-3(L2),Envisat(L2)platform_vocabulary :NASA/GCMD Platform Keywords. Version 8.6instrument :RA(L2),RA-2(L2),ALT(TOPEX)(L2),POSEIDON-2(L2),POSEIDON-3(L2),POSEIDON-3b(L2)instrument_vocabulary :NASA/GCMD Platform Keywords. Version 8.6references :in review :doi.org/10.5194/essd-2019-84id :GRRATS(Global River Radar Altimeter Time Series) 1km/dailysummary :The Global River Radar Altimeter Time Series (GRRATS) 1km/daily interpolations are river heights from ERS1, ERS2, TOPEX/Poseidon OSTM/Jason-2 Envisat and Jason-3 that are interpolated and processed to create a continuous heights for the study over the temporal range of the altimeters used. The purpose of these heights are to provide satellite altimetric river height data in a form that is more recognizable to the observational community and as a way to get users use to using satellite data for river hydrology.time_coverage_resolution :1 daydate_created :2021-06-30T08:03:41time_coverage_start :1992-04-08T15:20:40time_coverage_end :2018-04-20T03:39:13geospatial_lon_min :-73.35433106652545geospatial_lon_max :-51.0426448887506geospatial_lon_units :degree_eastgeospatial_lat_min :-4.3804275867636875geospatial_lat_max :-0.6550700975069503geospatial_lat_units :degree_northgeospatial_vertical_max :92.7681246287056geospatial_vertical_min :-3.5634095181633763geospatial_vertical_units :mgeospatial_vertical_positive :up\n\n\n\nPlot a subset of the data\nPlotting the river distances and associated heights on the map at time t=9069 (March 16, 2018) using plt.\n\nfig = plt.figure(figsize=[11,7]) \nax = plt.axes(projection=ccrs.PlateCarree())\nax.coastlines()\nax.set_extent([-85, -30, -20, 20])\nax.add_feature(cartopy.feature.RIVERS)\n\nplt.scatter(ds_MEaSUREs.lon, ds_MEaSUREs.lat, lw=1, c=ds_MEaSUREs.height[:,9069])\nplt.colorbar(label='Interpolated River Heights (m)')\nplt.clim(-10,100)\n\nplt.show()", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -4094,7 +4094,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html#sea-surface-salinity-multi-mission-smap-aquarius-smos", "title": "Amazon Estuary Exploration:", "section": "Sea Surface Salinity (Multi-mission: SMAP, Aquarius, SMOS)", - "text": "Sea Surface Salinity (Multi-mission: SMAP, Aquarius, SMOS)\nThe shortname for this dataset is ‘OISSS_L4_multimission_7day_v1’ with the concept ID: C2095055342-POCLOUD. This dataset contains hundreds of granules, so it would be impractical to search and copy all of the URLs in Earthdata Search. Using the shortname, we can access all the files at once in the cloud (1.1 GB data).\n\nsss_results = earthaccess.search_data(short_name=\"OISSS_L4_multimission_7day_v1\")\n\nGranules found: 998\n\n\nThe following cell may take up to around 10 minutes to run due to the size of the dataset\n\n#this line ignores warnings about large chunk sizes\ndask.config.set(**{'array.slicing.split_large_chunks': False})\n\nds_sss = xr.open_mfdataset(earthaccess.open(sss_results),\n combine='by_coords',\n mask_and_scale=True,\n decode_cf=True,\n chunks='auto',\n engine='h5netcdf')\nds_sss\n\n Opening 998 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 1440, latitude: 720, time: 998)\nCoordinates:\n * longitude (longitude) float32 -179.9 -179.6 ... 179.6 179.9\n * latitude (latitude) float32 -89.88 -89.62 ... 89.62 89.88\n * time (time) datetime64[ns] 2011-08-28 ... 2022-08-02\nData variables:\n sss (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_empirical_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n sss_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\nAttributes: (12/42)\n Conventions: CF-1.8, ACDD-1.3\n standard_name_vocabulary: CF Standard Name Table v27\n Title: Multi-Mission Optimally Interpolated Sea S...\n Short_Name: OISSS_L4_multimission_7d_v1\n Version: V1.0\n Processing_Level: Level 4\n ... ...\n geospatial_lat_resolution: 0.25\n geospatial_lat_units: degrees_north\n geospatial_lon_min: -180.0\n geospatial_lon_max: 180.0\n geospatial_lon_resolution: 0.25\n geospatial_lon_units: degrees_eastxarray.DatasetDimensions:longitude: 1440latitude: 720time: 998Coordinates: (3)longitude(longitude)float32-179.9 -179.6 ... 179.6 179.9long_name :longitudestandard_name :longitudeunits :degrees_eastaxis :Xvalid_min :-180.0valid_max :180.0coverage_content_type :coordinatearray([-179.875, -179.625, -179.375, ..., 179.375, 179.625, 179.875],\n dtype=float32)latitude(latitude)float32-89.88 -89.62 ... 89.62 89.88long_name :latitudestandard_name :latitudeunits :degrees_northaxis :Yvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([-89.875, -89.625, -89.375, ..., 89.375, 89.625, 89.875],\n dtype=float32)time(time)datetime64[ns]2011-08-28 ... 2022-08-02long_name :center day of a time period over which satellite Level 2 SSS data have been collected for OISSS analysisstandard_name :timeaxis :Tcoverage_content_type :coordinatearray(['2011-08-28T00:00:00.000000000', '2011-09-01T00:00:00.000000000',\n '2011-09-05T00:00:00.000000000', ..., '2022-07-25T00:00:00.000000000',\n '2022-07-29T00:00:00.000000000', '2022-08-02T00:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (3)sss(latitude, longitude, time)float32dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>long_name :sea surface salinitystandard_name :sea_surface_salinityunits :1e-3valid_min :0.0valid_max :45.0add_factor :0.0coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nDask graph\n961 chunks in 1939 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_empirical_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n3.72 GiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 962)\n\n\nDask graph\n37 chunks in 86 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoordinates :\n\ntime longitude latudude\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nDask graph\n961 chunks in 1934 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\nIndexes: (3)longitudePandasIndexPandasIndex(Index([-179.875, -179.625, -179.375, -179.125, -178.875, -178.625, -178.375,\n -178.125, -177.875, -177.625,\n ...\n 177.625, 177.875, 178.125, 178.375, 178.625, 178.875, 179.125,\n 179.375, 179.625, 179.875],\n dtype='float32', name='longitude', length=1440))latitudePandasIndexPandasIndex(Index([-89.875, -89.625, -89.375, -89.125, -88.875, -88.625, -88.375, -88.125,\n -87.875, -87.625,\n ...\n 87.625, 87.875, 88.125, 88.375, 88.625, 88.875, 89.125, 89.375,\n 89.625, 89.875],\n dtype='float32', name='latitude', length=720))timePandasIndexPandasIndex(DatetimeIndex(['2011-08-28', '2011-09-01', '2011-09-05', '2011-09-09',\n '2011-09-13', '2011-09-17', '2011-09-21', '2011-09-25',\n '2011-09-29', '2011-10-03',\n ...\n '2022-06-27', '2022-07-01', '2022-07-05', '2022-07-09',\n '2022-07-13', '2022-07-17', '2022-07-21', '2022-07-25',\n '2022-07-29', '2022-08-02'],\n dtype='datetime64[ns]', name='time', length=998, freq=None))Attributes: (42)Conventions :CF-1.8, ACDD-1.3standard_name_vocabulary :CF Standard Name Table v27Title :Multi-Mission Optimally Interpolated Sea Surface Salinity 7-Day Global Dataset V1.0Short_Name :OISSS_L4_multimission_7d_v1Version :V1.0Processing_Level :Level 4source :Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662sourse_of_input_Aquarius_SSS :Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5sourse_of_input_SMAP_SSS :Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.sourse_of_input_SMOS_SSS :ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/accessplatform :Aquarius/SAC-D, SMAP, SMOSinstrument :Aquarius radiometer, SMAP radiometer, SMOS MIRASCreation_Date :2023-01-16T04:04:41ZCreator_Name :Oleg MelnichenkoCreator_Email :oleg@hawaii.eduCreator_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBProject :NASA Ocean SalinityKeywords :Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSSKeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science KeywordsInstitution :IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CAPublisher_Name :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzPublisher_Email :oleg@hawaii.edu.orgPublisher_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBDataset_Citation_Authors :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzDataset_Citation_Year :2021Dataset_Citation_Product :Aquarius/SMAP Sea Surface Salinity Optimum Interpolation AnalysisTechnical_Notes :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdfyear_of_observation :2022month_of_observation :3day_of_observation :11time_coverage_start :2022-03-07T12:00:00Ztime_coverage_end :2022-03-15T12:00:00Ztime_coverage_resolution :P7Dcdm_data_type :gridgeospatial_lat_min :-90.0geospatial_lat_max :90.0geospatial_lat_resolution :0.25geospatial_lat_units :degrees_northgeospatial_lon_min :-180.0geospatial_lon_max :180.0geospatial_lon_resolution :0.25geospatial_lon_units :degrees_east\n\n\n\n\nPlot a subset of the data\nUse the function xarray.DataSet.sel to select a subset of the data at the outlet of the Amazon to plot at time t=0 (August 28, 2011) with hvplot.\n\nlat_bnds, lon_bnds = [-2, 6], [-52, -44] \nds_sss_subset = ds_sss.sel(latitude=slice(*lat_bnds), longitude=slice(*lon_bnds))\nds_sss_subset\n\nds_sss_subset.sss[:,:,0].hvplot()", + "text": "Sea Surface Salinity (Multi-mission: SMAP, Aquarius, SMOS)\nThe shortname for this dataset is ‘OISSS_L4_multimission_7day_v1’ with the concept ID: C2095055342-POCLOUD. This dataset contains hundreds of granules, so it would be impractical to search and copy all of the URLs in Earthdata Search. Using the shortname, we can access all the files at once in the cloud (1.1 GB data).\n\nsss_results = earthaccess.search_data(short_name=\"OISSS_L4_multimission_7day_v1\")\n\nGranules found: 998\n\n\nThe following cell may take up to around 10 minutes to run due to the size of the dataset\n\n#this line ignores warnings about large chunk sizes\ndask.config.set(**{'array.slicing.split_large_chunks': False})\n\nds_sss = xr.open_mfdataset(earthaccess.open(sss_results),\n combine='by_coords',\n mask_and_scale=True,\n decode_cf=True,\n chunks='auto',\n engine='h5netcdf')\nds_sss\n\n Opening 998 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 1440, latitude: 720, time: 998)\nCoordinates:\n * longitude (longitude) float32 -179.9 -179.6 ... 179.6 179.9\n * latitude (latitude) float32 -89.88 -89.62 ... 89.62 89.88\n * time (time) datetime64[ns] 2011-08-28 ... 2022-08-02\nData variables:\n sss (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n sss_empirical_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n sss_uncertainty (latitude, longitude, time) float32 dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\nAttributes: (12/42)\n Conventions: CF-1.8, ACDD-1.3\n standard_name_vocabulary: CF Standard Name Table v27\n Title: Multi-Mission Optimally Interpolated Sea S...\n Short_Name: OISSS_L4_multimission_7d_v1\n Version: V1.0\n Processing_Level: Level 4\n ... ...\n geospatial_lat_resolution: 0.25\n geospatial_lat_units: degrees_north\n geospatial_lon_min: -180.0\n geospatial_lon_max: 180.0\n geospatial_lon_resolution: 0.25\n geospatial_lon_units: degrees_eastxarray.DatasetDimensions:longitude: 1440latitude: 720time: 998Coordinates: (3)longitude(longitude)float32-179.9 -179.6 ... 179.6 179.9long_name :longitudestandard_name :longitudeunits :degrees_eastaxis :Xvalid_min :-180.0valid_max :180.0coverage_content_type :coordinatearray([-179.875, -179.625, -179.375, ..., 179.375, 179.625, 179.875],\n dtype=float32)latitude(latitude)float32-89.88 -89.62 ... 89.62 89.88long_name :latitudestandard_name :latitudeunits :degrees_northaxis :Yvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([-89.875, -89.625, -89.375, ..., 89.375, 89.625, 89.875],\n dtype=float32)time(time)datetime64[ns]2011-08-28 ... 2022-08-02long_name :center day of a time period over which satellite Level 2 SSS data have been collected for OISSS analysisstandard_name :timeaxis :Tcoverage_content_type :coordinatearray(['2011-08-28T00:00:00.000000000', '2011-09-01T00:00:00.000000000',\n '2011-09-05T00:00:00.000000000', ..., '2022-07-25T00:00:00.000000000',\n '2022-07-29T00:00:00.000000000', '2022-08-02T00:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (3)sss(latitude, longitude, time)float32dask.array<chunksize=(720, 1440, 1), meta=np.ndarray>long_name :sea surface salinitystandard_name :sea_surface_salinityunits :1e-3valid_min :0.0valid_max :45.0add_factor :0.0coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nDask graph\n961 chunks in 1939 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_empirical_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 962), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n3.72 GiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 962)\n\n\nDask graph\n37 chunks in 86 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\n\n\n\nsss_uncertainty\n\n\n(latitude, longitude, time)\n\n\nfloat32\n\n\ndask.array<chunksize=(720, 1440, 1), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated empirical uncertainty of multi-mission OISSS\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\nadd_factor :\n\n0.0\n\ncoordinates :\n\ntime longitude latudude\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.85 GiB\n150.29 MiB\n\n\nShape\n(720, 1440, 998)\n(720, 1440, 38)\n\n\nDask graph\n961 chunks in 1934 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 998 1440 720\n\n\n\n\n\nIndexes: (3)longitudePandasIndexPandasIndex(Index([-179.875, -179.625, -179.375, -179.125, -178.875, -178.625, -178.375,\n -178.125, -177.875, -177.625,\n ...\n 177.625, 177.875, 178.125, 178.375, 178.625, 178.875, 179.125,\n 179.375, 179.625, 179.875],\n dtype='float32', name='longitude', length=1440))latitudePandasIndexPandasIndex(Index([-89.875, -89.625, -89.375, -89.125, -88.875, -88.625, -88.375, -88.125,\n -87.875, -87.625,\n ...\n 87.625, 87.875, 88.125, 88.375, 88.625, 88.875, 89.125, 89.375,\n 89.625, 89.875],\n dtype='float32', name='latitude', length=720))timePandasIndexPandasIndex(DatetimeIndex(['2011-08-28', '2011-09-01', '2011-09-05', '2011-09-09',\n '2011-09-13', '2011-09-17', '2011-09-21', '2011-09-25',\n '2011-09-29', '2011-10-03',\n ...\n '2022-06-27', '2022-07-01', '2022-07-05', '2022-07-09',\n '2022-07-13', '2022-07-17', '2022-07-21', '2022-07-25',\n '2022-07-29', '2022-08-02'],\n dtype='datetime64[ns]', name='time', length=998, freq=None))Attributes: (42)Conventions :CF-1.8, ACDD-1.3standard_name_vocabulary :CF Standard Name Table v27Title :Multi-Mission Optimally Interpolated Sea Surface Salinity 7-Day Global Dataset V1.0Short_Name :OISSS_L4_multimission_7d_v1Version :V1.0Processing_Level :Level 4source :Aquarius V5.0 Level 2 SSS; SMAP RSS V4.0 Level 2 SSS_40km; SMOS Level 2 SSS L2OS version 662sourse_of_input_Aquarius_SSS :Aquarius Official Release Level 2 Sea Surface Salinity & Wind Speed Cal Data V5.0. Distributed by PO.DAAC at https://podaac.jpl.nasa.gov/dataset/AQUARIUS_L2_SSS_CAL_V5sourse_of_input_SMAP_SSS :Meissner, T., F. Wentz, A. Manaster, R. Lindsley, 2019. Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 4.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA, Available online at www.remss.com/missions/smap.sourse_of_input_SMOS_SSS :ESA SMOS online dissemination service at https://smos-diss.eo.esa.int/oads/accessplatform :Aquarius/SAC-D, SMAP, SMOSinstrument :Aquarius radiometer, SMAP radiometer, SMOS MIRASCreation_Date :2023-01-16T04:04:41ZCreator_Name :Oleg MelnichenkoCreator_Email :oleg@hawaii.eduCreator_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBProject :NASA Ocean SalinityKeywords :Sea Surface Salinity, SSS, Aquarius, SMAP, Optimum Interpolation, OISSSKeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science KeywordsInstitution :IPRC/SOEST, University of Hawaii, Honolulu, HI; Remote Sensing Systems (RSS), Santa Rosa, CAPublisher_Name :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzPublisher_Email :oleg@hawaii.edu.orgPublisher_URL :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLBDataset_Citation_Authors :Oleg Melnichenko, Peter Hacker, James Potemra, Thomas Meissner, Frank WentzDataset_Citation_Year :2021Dataset_Citation_Product :Aquarius/SMAP Sea Surface Salinity Optimum Interpolation AnalysisTechnical_Notes :http://iprc.soest.hawaii.edu/users/oleg/oisss/GLB/OISSS_Product_Notes.pdfyear_of_observation :2022month_of_observation :3day_of_observation :11time_coverage_start :2022-03-07T12:00:00Ztime_coverage_end :2022-03-15T12:00:00Ztime_coverage_resolution :P7Dcdm_data_type :gridgeospatial_lat_min :-90.0geospatial_lat_max :90.0geospatial_lat_resolution :0.25geospatial_lat_units :degrees_northgeospatial_lon_min :-180.0geospatial_lon_max :180.0geospatial_lon_resolution :0.25geospatial_lon_units :degrees_east\n\n\n\nPlot a subset of the data\nUse the function xarray.DataSet.sel to select a subset of the data at the outlet of the Amazon to plot at time t=0 (August 28, 2011) with hvplot.\n\nlat_bnds, lon_bnds = [-2, 6], [-52, -44] \nds_sss_subset = ds_sss.sel(latitude=slice(*lat_bnds), longitude=slice(*lon_bnds))\nds_sss_subset\n\nds_sss_subset.sss[:,:,0].hvplot()", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -4107,7 +4107,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html#sea-surface-temperature-modis", "title": "Amazon Estuary Exploration:", "section": "Sea Surface Temperature (MODIS)", - "text": "Sea Surface Temperature (MODIS)\nMODIS has SST data that coincides with the period used for SSS, 2011-present (943 MB), and has the short name: “MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0”. Let’s access this in the same method as before.\nGet a list of files so we can open them all at once, creating an xarray dataset using the open_mfdataset() function to “read in” all of the netCDF4 files in one call. MODIS does not have a built-in time variable like SSS, but it is subset by latitude and longitude coordinates. We need to combine the files using the nested format with a created ‘time’ dimension.\n\nmodis_results = earthaccess.search_data(short_name=\"MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0\", temporal = (\"2011-01-01\", \"2023-01-01\"))\n\nGranules found: 143\n\n\nMODIS did not come with a time variable, so it needs to be extracted from the file names and added in the file preprocessing so files can be successfully concatenated.\n\n#function for time dimension added to each netCDF file\ndef preprocessing(ds): \n file_name = ds.product_name\n file_date = basename(file_name).split(\"_\")[2][:6]\n file_date_c = datetime.strptime(file_date, \"%Y%m\")\n time_point = [file_date_c]\n ds.coords['time'] = ('time', time_point) #expand the dimensions to include time\n return ds\n\nds_MODIS = xr.open_mfdataset(earthaccess.open(modis_results), combine='by_coords', join='override', mask_and_scale=True, decode_cf=True, chunks='auto',preprocess = preprocessing)\nds_MODIS\n\n Opening 143 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 143, lat: 2160, lon: 4320, rgb: 3, eightbitcolor: 256)\nCoordinates:\n * lat (lat) float32 89.96 89.88 89.79 89.71 ... -89.79 -89.88 -89.96\n * lon (lon) float32 -180.0 -179.9 -179.8 -179.7 ... 179.8 179.9 180.0\n * time (time) datetime64[ns] 2011-01-01 2011-02-01 ... 2023-01-01\nDimensions without coordinates: rgb, eightbitcolor\nData variables:\n sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n qual_sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n palette (time, lon, lat, rgb, eightbitcolor) uint8 dask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\nAttributes: (12/59)\n product_name: AQUA_MODIS.20110101_20110131.L3m.MO.SST...\n instrument: MODIS\n title: MODISA Level-3 Standard Mapped Image\n project: Ocean Biology Processing Group (NASA/GS...\n platform: Aqua\n temporal_range: month\n ... ...\n publisher_url: https://oceandata.sci.gsfc.nasa.gov\n processing_level: L3 Mapped\n cdm_data_type: grid\n data_bins: 4834400\n data_minimum: -1.635\n data_maximum: 32.06999xarray.DatasetDimensions:time: 143lat: 2160lon: 4320rgb: 3eightbitcolor: 256Coordinates: (3)lat(lat)float3289.96 89.88 89.79 ... -89.88 -89.96long_name :Latitudeunits :degrees_northstandard_name :latitudevalid_min :-90.0valid_max :90.0array([ 89.958336, 89.875 , 89.79167 , ..., -89.791664, -89.87501 ,\n -89.958336], dtype=float32)lon(lon)float32-180.0 -179.9 ... 179.9 180.0long_name :Longitudeunits :degrees_eaststandard_name :longitudevalid_min :-180.0valid_max :180.0array([-179.95833, -179.875 , -179.79166, ..., 179.79167, 179.87502,\n 179.95836], dtype=float32)time(time)datetime64[ns]2011-01-01 ... 2023-01-01array(['2011-01-01T00:00:00.000000000', '2011-02-01T00:00:00.000000000',\n '2011-03-01T00:00:00.000000000', '2011-04-01T00:00:00.000000000',\n '2011-05-01T00:00:00.000000000', '2011-06-01T00:00:00.000000000',\n '2011-07-01T00:00:00.000000000', '2011-08-01T00:00:00.000000000',\n '2011-09-01T00:00:00.000000000', '2011-10-01T00:00:00.000000000',\n '2011-11-01T00:00:00.000000000', '2011-12-01T00:00:00.000000000',\n '2012-01-01T00:00:00.000000000', '2012-02-01T00:00:00.000000000',\n '2012-03-01T00:00:00.000000000', '2012-04-01T00:00:00.000000000',\n '2012-05-01T00:00:00.000000000', '2012-06-01T00:00:00.000000000',\n '2012-07-01T00:00:00.000000000', '2012-08-01T00:00:00.000000000',\n '2012-09-01T00:00:00.000000000', '2012-10-01T00:00:00.000000000',\n '2012-11-01T00:00:00.000000000', '2012-12-01T00:00:00.000000000',\n '2013-01-01T00:00:00.000000000', '2013-02-01T00:00:00.000000000',\n '2013-03-01T00:00:00.000000000', '2013-04-01T00:00:00.000000000',\n '2013-05-01T00:00:00.000000000', '2013-06-01T00:00:00.000000000',\n '2013-07-01T00:00:00.000000000', '2013-08-01T00:00:00.000000000',\n '2013-09-01T00:00:00.000000000', '2013-10-01T00:00:00.000000000',\n '2013-11-01T00:00:00.000000000', '2013-12-01T00:00:00.000000000',\n '2014-01-01T00:00:00.000000000', '2014-02-01T00:00:00.000000000',\n '2014-03-01T00:00:00.000000000', '2014-04-01T00:00:00.000000000',\n '2014-05-01T00:00:00.000000000', '2014-06-01T00:00:00.000000000',\n '2014-07-01T00:00:00.000000000', '2014-08-01T00:00:00.000000000',\n '2014-09-01T00:00:00.000000000', '2014-10-01T00:00:00.000000000',\n '2014-11-01T00:00:00.000000000', '2014-12-01T00:00:00.000000000',\n '2015-01-01T00:00:00.000000000', '2015-02-01T00:00:00.000000000',\n '2015-03-01T00:00:00.000000000', '2015-04-01T00:00:00.000000000',\n '2015-05-01T00:00:00.000000000', '2015-06-01T00:00:00.000000000',\n '2015-07-01T00:00:00.000000000', '2015-08-01T00:00:00.000000000',\n '2015-09-01T00:00:00.000000000', '2015-10-01T00:00:00.000000000',\n '2015-11-01T00:00:00.000000000', '2015-12-01T00:00:00.000000000',\n '2016-01-01T00:00:00.000000000', '2016-02-01T00:00:00.000000000',\n '2016-03-01T00:00:00.000000000', '2016-04-01T00:00:00.000000000',\n '2016-05-01T00:00:00.000000000', '2016-06-01T00:00:00.000000000',\n '2016-07-01T00:00:00.000000000', '2016-08-01T00:00:00.000000000',\n '2016-09-01T00:00:00.000000000', '2016-10-01T00:00:00.000000000',\n '2016-11-01T00:00:00.000000000', '2016-12-01T00:00:00.000000000',\n '2017-01-01T00:00:00.000000000', '2017-02-01T00:00:00.000000000',\n '2017-03-01T00:00:00.000000000', '2017-04-01T00:00:00.000000000',\n '2017-05-01T00:00:00.000000000', '2017-06-01T00:00:00.000000000',\n '2017-07-01T00:00:00.000000000', '2017-08-01T00:00:00.000000000',\n '2017-09-01T00:00:00.000000000', '2017-10-01T00:00:00.000000000',\n '2017-11-01T00:00:00.000000000', '2017-12-01T00:00:00.000000000',\n '2018-01-01T00:00:00.000000000', '2018-02-01T00:00:00.000000000',\n '2018-03-01T00:00:00.000000000', '2018-04-01T00:00:00.000000000',\n '2018-05-01T00:00:00.000000000', '2018-06-01T00:00:00.000000000',\n '2018-07-01T00:00:00.000000000', '2018-08-01T00:00:00.000000000',\n '2018-09-01T00:00:00.000000000', '2018-10-01T00:00:00.000000000',\n '2018-11-01T00:00:00.000000000', '2018-12-01T00:00:00.000000000',\n '2019-01-01T00:00:00.000000000', '2019-02-01T00:00:00.000000000',\n '2019-03-01T00:00:00.000000000', '2019-04-01T00:00:00.000000000',\n '2019-05-01T00:00:00.000000000', '2019-06-01T00:00:00.000000000',\n '2019-07-01T00:00:00.000000000', '2019-08-01T00:00:00.000000000',\n '2019-09-01T00:00:00.000000000', '2019-10-01T00:00:00.000000000',\n '2019-11-01T00:00:00.000000000', '2019-12-01T00:00:00.000000000',\n '2020-01-01T00:00:00.000000000', '2020-02-01T00:00:00.000000000',\n '2020-03-01T00:00:00.000000000', '2020-04-01T00:00:00.000000000',\n '2020-05-01T00:00:00.000000000', '2020-06-01T00:00:00.000000000',\n '2020-07-01T00:00:00.000000000', '2020-08-01T00:00:00.000000000',\n '2020-09-01T00:00:00.000000000', '2020-10-01T00:00:00.000000000',\n '2020-11-01T00:00:00.000000000', '2020-12-01T00:00:00.000000000',\n '2021-01-01T00:00:00.000000000', '2021-02-01T00:00:00.000000000',\n '2021-03-01T00:00:00.000000000', '2021-04-01T00:00:00.000000000',\n '2021-05-01T00:00:00.000000000', '2021-06-01T00:00:00.000000000',\n '2021-07-01T00:00:00.000000000', '2021-09-01T00:00:00.000000000',\n '2021-10-01T00:00:00.000000000', '2021-11-01T00:00:00.000000000',\n '2021-12-01T00:00:00.000000000', '2022-01-01T00:00:00.000000000',\n '2022-02-01T00:00:00.000000000', '2022-03-01T00:00:00.000000000',\n '2022-04-01T00:00:00.000000000', '2022-05-01T00:00:00.000000000',\n '2022-06-01T00:00:00.000000000', '2022-07-01T00:00:00.000000000',\n '2022-08-01T00:00:00.000000000', '2022-09-01T00:00:00.000000000',\n '2022-10-01T00:00:00.000000000', '2022-11-01T00:00:00.000000000',\n '2023-01-01T00:00:00.000000000'], dtype='datetime64[ns]')Data variables: (3)sst4(time, lat, lon)float32dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>long_name :4um Sea Surface Temperatureunits :degree_Cstandard_name :sea_surface_temperaturevalid_min :-1000valid_max :10000display_scale :lineardisplay_min :-2.0display_max :45.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nDask graph\n143 chunks in 430 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\nqual_sst4\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nQuality Levels, Sea Surface Temperature\n\nvalid_min :\n\n0\n\nvalid_max :\n\n5\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nDask graph\n143 chunks in 430 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\npalette\n\n\n(time, lon, lat, rgb, eightbitcolor)\n\n\nuint8\n\n\ndask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.93 TiB\n6.67 GiB\n\n\nShape\n(143, 4320, 2160, 3, 256)\n(1, 4320, 2160, 3, 256)\n\n\nDask graph\n143 chunks in 716 graph layers\n\n\nData type\nuint8 numpy.ndarray\n\n\n\n\n 4320 143 256 3 2160\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Index([ 89.95833587646484, 89.875, 89.79167175292969,\n 89.70833587646484, 89.625, 89.54167175292969,\n 89.45833587646484, 89.375, 89.29167175292969,\n 89.20833587646484,\n ...\n -89.20833587646484, -89.29166412353516, -89.37500762939453,\n -89.45833587646484, -89.54166412353516, -89.62500762939453,\n -89.70833587646484, -89.79166412353516, -89.87500762939453,\n -89.95833587646484],\n dtype='float32', name='lat', length=2160))lonPandasIndexPandasIndex(Index([ -179.9583282470703, -179.875, -179.79165649414062,\n -179.7083282470703, -179.625, -179.54165649414062,\n -179.4583282470703, -179.375, -179.29165649414062,\n -179.2083282470703,\n ...\n 179.20835876464844, 179.2916717529297, 179.37501525878906,\n 179.45835876464844, 179.5416717529297, 179.62501525878906,\n 179.70835876464844, 179.7916717529297, 179.87501525878906,\n 179.95835876464844],\n dtype='float32', name='lon', length=4320))timePandasIndexPandasIndex(DatetimeIndex(['2011-01-01', '2011-02-01', '2011-03-01', '2011-04-01',\n '2011-05-01', '2011-06-01', '2011-07-01', '2011-08-01',\n '2011-09-01', '2011-10-01',\n ...\n '2022-03-01', '2022-04-01', '2022-05-01', '2022-06-01',\n '2022-07-01', '2022-08-01', '2022-09-01', '2022-10-01',\n '2022-11-01', '2023-01-01'],\n dtype='datetime64[ns]', name='time', length=143, freq=None))Attributes: (59)product_name :AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.ncinstrument :MODIStitle :MODISA Level-3 Standard Mapped Imageproject :Ocean Biology Processing Group (NASA/GSFC/OBPG)platform :Aquatemporal_range :monthprocessing_version :R2019.0date_created :2019-12-17T18:28:57.000Zhistory :l3mapgen par=AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc.param l2_flag_names :LAND,~HISOLZENtime_coverage_start :2010-12-31T12:10:01.000Ztime_coverage_end :2011-01-31T14:29:59.000Zstart_orbit_number :46065end_orbit_number :46518map_projection :Equidistant Cylindricallatitude_units :degrees_northlongitude_units :degrees_eastnorthernmost_latitude :90.0southernmost_latitude :-90.0westernmost_longitude :-180.0easternmost_longitude :180.0geospatial_lat_max :90.0geospatial_lat_min :-90.0geospatial_lon_max :180.0geospatial_lon_min :-180.0latitude_step :0.083333336longitude_step :0.083333336sw_point_latitude :-89.958336sw_point_longitude :-179.95833spatialResolution :9.28 kmgeospatial_lon_resolution :0.083333336geospatial_lat_resolution :0.083333336geospatial_lat_units :degrees_northgeospatial_lon_units :degrees_eastnumber_of_lines :2160number_of_columns :4320measure :Meansuggested_image_scaling_minimum :-2.0suggested_image_scaling_maximum :45.0suggested_image_scaling_type :LINEARsuggested_image_scaling_applied :No_lastModified :2019-12-17T18:28:57.000ZConventions :CF-1.6 ACDD-1.3institution :NASA Goddard Space Flight Center, Ocean Ecology Laboratory, Ocean Biology Processing Groupstandard_name_vocabulary :CF Standard Name Table v36naming_authority :gov.nasa.gsfc.sci.oceandataid :AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc/L3/AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nclicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policy/creator_name :NASA/GSFC/OBPGpublisher_name :NASA/GSFC/OBPGcreator_email :data@oceancolor.gsfc.nasa.govpublisher_email :data@oceancolor.gsfc.nasa.govcreator_url :https://oceandata.sci.gsfc.nasa.govpublisher_url :https://oceandata.sci.gsfc.nasa.govprocessing_level :L3 Mappedcdm_data_type :griddata_bins :4834400data_minimum :-1.635data_maximum :32.06999\n\n\n\n\nPlot a subset of the data\nUse the function xarray.DataSet.sel to select a subset of the data at the outlet of the Amazon to plot with hvplot.\n\nlat_bnds, lon_bnds = [6,-2], [-52, -44] \nds_MODIS_subset = ds_MODIS.sel(lat=slice(*lat_bnds), lon=slice(*lon_bnds))\nds_MODIS_subset\n\nds_MODIS_subset.sst4.hvplot.image(y='lat', x='lon', cmap='viridis').opts(clim=(22,30))", + "text": "Sea Surface Temperature (MODIS)\nMODIS has SST data that coincides with the period used for SSS, 2011-present (943 MB), and has the short name: “MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0”. Let’s access this in the same method as before.\nGet a list of files so we can open them all at once, creating an xarray dataset using the open_mfdataset() function to “read in” all of the netCDF4 files in one call. MODIS does not have a built-in time variable like SSS, but it is subset by latitude and longitude coordinates. We need to combine the files using the nested format with a created ‘time’ dimension.\n\nmodis_results = earthaccess.search_data(short_name=\"MODIS_AQUA_L3_SST_MID-IR_MONTHLY_9KM_NIGHTTIME_V2019.0\", temporal = (\"2011-01-01\", \"2023-01-01\"))\n\nGranules found: 143\n\n\nMODIS did not come with a time variable, so it needs to be extracted from the file names and added in the file preprocessing so files can be successfully concatenated.\n\n#function for time dimension added to each netCDF file\ndef preprocessing(ds): \n file_name = ds.product_name\n file_date = basename(file_name).split(\"_\")[2][:6]\n file_date_c = datetime.strptime(file_date, \"%Y%m\")\n time_point = [file_date_c]\n ds.coords['time'] = ('time', time_point) #expand the dimensions to include time\n return ds\n\nds_MODIS = xr.open_mfdataset(earthaccess.open(modis_results), combine='by_coords', join='override', mask_and_scale=True, decode_cf=True, chunks='auto',preprocess = preprocessing)\nds_MODIS\n\n Opening 143 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 143, lat: 2160, lon: 4320, rgb: 3, eightbitcolor: 256)\nCoordinates:\n * lat (lat) float32 89.96 89.88 89.79 89.71 ... -89.79 -89.88 -89.96\n * lon (lon) float32 -180.0 -179.9 -179.8 -179.7 ... 179.8 179.9 180.0\n * time (time) datetime64[ns] 2011-01-01 2011-02-01 ... 2023-01-01\nDimensions without coordinates: rgb, eightbitcolor\nData variables:\n sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n qual_sst4 (time, lat, lon) float32 dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n palette (time, lon, lat, rgb, eightbitcolor) uint8 dask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\nAttributes: (12/59)\n product_name: AQUA_MODIS.20110101_20110131.L3m.MO.SST...\n instrument: MODIS\n title: MODISA Level-3 Standard Mapped Image\n project: Ocean Biology Processing Group (NASA/GS...\n platform: Aqua\n temporal_range: month\n ... ...\n publisher_url: https://oceandata.sci.gsfc.nasa.gov\n processing_level: L3 Mapped\n cdm_data_type: grid\n data_bins: 4834400\n data_minimum: -1.635\n data_maximum: 32.06999xarray.DatasetDimensions:time: 143lat: 2160lon: 4320rgb: 3eightbitcolor: 256Coordinates: (3)lat(lat)float3289.96 89.88 89.79 ... -89.88 -89.96long_name :Latitudeunits :degrees_northstandard_name :latitudevalid_min :-90.0valid_max :90.0array([ 89.958336, 89.875 , 89.79167 , ..., -89.791664, -89.87501 ,\n -89.958336], dtype=float32)lon(lon)float32-180.0 -179.9 ... 179.9 180.0long_name :Longitudeunits :degrees_eaststandard_name :longitudevalid_min :-180.0valid_max :180.0array([-179.95833, -179.875 , -179.79166, ..., 179.79167, 179.87502,\n 179.95836], dtype=float32)time(time)datetime64[ns]2011-01-01 ... 2023-01-01array(['2011-01-01T00:00:00.000000000', '2011-02-01T00:00:00.000000000',\n '2011-03-01T00:00:00.000000000', '2011-04-01T00:00:00.000000000',\n '2011-05-01T00:00:00.000000000', '2011-06-01T00:00:00.000000000',\n '2011-07-01T00:00:00.000000000', '2011-08-01T00:00:00.000000000',\n '2011-09-01T00:00:00.000000000', '2011-10-01T00:00:00.000000000',\n '2011-11-01T00:00:00.000000000', '2011-12-01T00:00:00.000000000',\n '2012-01-01T00:00:00.000000000', '2012-02-01T00:00:00.000000000',\n '2012-03-01T00:00:00.000000000', '2012-04-01T00:00:00.000000000',\n '2012-05-01T00:00:00.000000000', '2012-06-01T00:00:00.000000000',\n '2012-07-01T00:00:00.000000000', '2012-08-01T00:00:00.000000000',\n '2012-09-01T00:00:00.000000000', '2012-10-01T00:00:00.000000000',\n '2012-11-01T00:00:00.000000000', '2012-12-01T00:00:00.000000000',\n '2013-01-01T00:00:00.000000000', '2013-02-01T00:00:00.000000000',\n '2013-03-01T00:00:00.000000000', '2013-04-01T00:00:00.000000000',\n '2013-05-01T00:00:00.000000000', '2013-06-01T00:00:00.000000000',\n '2013-07-01T00:00:00.000000000', '2013-08-01T00:00:00.000000000',\n '2013-09-01T00:00:00.000000000', '2013-10-01T00:00:00.000000000',\n '2013-11-01T00:00:00.000000000', '2013-12-01T00:00:00.000000000',\n '2014-01-01T00:00:00.000000000', '2014-02-01T00:00:00.000000000',\n '2014-03-01T00:00:00.000000000', '2014-04-01T00:00:00.000000000',\n '2014-05-01T00:00:00.000000000', '2014-06-01T00:00:00.000000000',\n '2014-07-01T00:00:00.000000000', '2014-08-01T00:00:00.000000000',\n '2014-09-01T00:00:00.000000000', '2014-10-01T00:00:00.000000000',\n '2014-11-01T00:00:00.000000000', '2014-12-01T00:00:00.000000000',\n '2015-01-01T00:00:00.000000000', '2015-02-01T00:00:00.000000000',\n '2015-03-01T00:00:00.000000000', '2015-04-01T00:00:00.000000000',\n '2015-05-01T00:00:00.000000000', '2015-06-01T00:00:00.000000000',\n '2015-07-01T00:00:00.000000000', '2015-08-01T00:00:00.000000000',\n '2015-09-01T00:00:00.000000000', '2015-10-01T00:00:00.000000000',\n '2015-11-01T00:00:00.000000000', '2015-12-01T00:00:00.000000000',\n '2016-01-01T00:00:00.000000000', '2016-02-01T00:00:00.000000000',\n '2016-03-01T00:00:00.000000000', '2016-04-01T00:00:00.000000000',\n '2016-05-01T00:00:00.000000000', '2016-06-01T00:00:00.000000000',\n '2016-07-01T00:00:00.000000000', '2016-08-01T00:00:00.000000000',\n '2016-09-01T00:00:00.000000000', '2016-10-01T00:00:00.000000000',\n '2016-11-01T00:00:00.000000000', '2016-12-01T00:00:00.000000000',\n '2017-01-01T00:00:00.000000000', '2017-02-01T00:00:00.000000000',\n '2017-03-01T00:00:00.000000000', '2017-04-01T00:00:00.000000000',\n '2017-05-01T00:00:00.000000000', '2017-06-01T00:00:00.000000000',\n '2017-07-01T00:00:00.000000000', '2017-08-01T00:00:00.000000000',\n '2017-09-01T00:00:00.000000000', '2017-10-01T00:00:00.000000000',\n '2017-11-01T00:00:00.000000000', '2017-12-01T00:00:00.000000000',\n '2018-01-01T00:00:00.000000000', '2018-02-01T00:00:00.000000000',\n '2018-03-01T00:00:00.000000000', '2018-04-01T00:00:00.000000000',\n '2018-05-01T00:00:00.000000000', '2018-06-01T00:00:00.000000000',\n '2018-07-01T00:00:00.000000000', '2018-08-01T00:00:00.000000000',\n '2018-09-01T00:00:00.000000000', '2018-10-01T00:00:00.000000000',\n '2018-11-01T00:00:00.000000000', '2018-12-01T00:00:00.000000000',\n '2019-01-01T00:00:00.000000000', '2019-02-01T00:00:00.000000000',\n '2019-03-01T00:00:00.000000000', '2019-04-01T00:00:00.000000000',\n '2019-05-01T00:00:00.000000000', '2019-06-01T00:00:00.000000000',\n '2019-07-01T00:00:00.000000000', '2019-08-01T00:00:00.000000000',\n '2019-09-01T00:00:00.000000000', '2019-10-01T00:00:00.000000000',\n '2019-11-01T00:00:00.000000000', '2019-12-01T00:00:00.000000000',\n '2020-01-01T00:00:00.000000000', '2020-02-01T00:00:00.000000000',\n '2020-03-01T00:00:00.000000000', '2020-04-01T00:00:00.000000000',\n '2020-05-01T00:00:00.000000000', '2020-06-01T00:00:00.000000000',\n '2020-07-01T00:00:00.000000000', '2020-08-01T00:00:00.000000000',\n '2020-09-01T00:00:00.000000000', '2020-10-01T00:00:00.000000000',\n '2020-11-01T00:00:00.000000000', '2020-12-01T00:00:00.000000000',\n '2021-01-01T00:00:00.000000000', '2021-02-01T00:00:00.000000000',\n '2021-03-01T00:00:00.000000000', '2021-04-01T00:00:00.000000000',\n '2021-05-01T00:00:00.000000000', '2021-06-01T00:00:00.000000000',\n '2021-07-01T00:00:00.000000000', '2021-09-01T00:00:00.000000000',\n '2021-10-01T00:00:00.000000000', '2021-11-01T00:00:00.000000000',\n '2021-12-01T00:00:00.000000000', '2022-01-01T00:00:00.000000000',\n '2022-02-01T00:00:00.000000000', '2022-03-01T00:00:00.000000000',\n '2022-04-01T00:00:00.000000000', '2022-05-01T00:00:00.000000000',\n '2022-06-01T00:00:00.000000000', '2022-07-01T00:00:00.000000000',\n '2022-08-01T00:00:00.000000000', '2022-09-01T00:00:00.000000000',\n '2022-10-01T00:00:00.000000000', '2022-11-01T00:00:00.000000000',\n '2023-01-01T00:00:00.000000000'], dtype='datetime64[ns]')Data variables: (3)sst4(time, lat, lon)float32dask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>long_name :4um Sea Surface Temperatureunits :degree_Cstandard_name :sea_surface_temperaturevalid_min :-1000valid_max :10000display_scale :lineardisplay_min :-2.0display_max :45.0\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nDask graph\n143 chunks in 430 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\nqual_sst4\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 2160, 4320), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nQuality Levels, Sea Surface Temperature\n\nvalid_min :\n\n0\n\nvalid_max :\n\n5\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n4.97 GiB\n35.60 MiB\n\n\nShape\n(143, 2160, 4320)\n(1, 2160, 4320)\n\n\nDask graph\n143 chunks in 430 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 4320 2160 143\n\n\n\n\n\n\n\n\npalette\n\n\n(time, lon, lat, rgb, eightbitcolor)\n\n\nuint8\n\n\ndask.array<chunksize=(1, 4320, 2160, 3, 256), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n0.93 TiB\n6.67 GiB\n\n\nShape\n(143, 4320, 2160, 3, 256)\n(1, 4320, 2160, 3, 256)\n\n\nDask graph\n143 chunks in 716 graph layers\n\n\nData type\nuint8 numpy.ndarray\n\n\n\n\n 4320 143 256 3 2160\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Index([ 89.95833587646484, 89.875, 89.79167175292969,\n 89.70833587646484, 89.625, 89.54167175292969,\n 89.45833587646484, 89.375, 89.29167175292969,\n 89.20833587646484,\n ...\n -89.20833587646484, -89.29166412353516, -89.37500762939453,\n -89.45833587646484, -89.54166412353516, -89.62500762939453,\n -89.70833587646484, -89.79166412353516, -89.87500762939453,\n -89.95833587646484],\n dtype='float32', name='lat', length=2160))lonPandasIndexPandasIndex(Index([ -179.9583282470703, -179.875, -179.79165649414062,\n -179.7083282470703, -179.625, -179.54165649414062,\n -179.4583282470703, -179.375, -179.29165649414062,\n -179.2083282470703,\n ...\n 179.20835876464844, 179.2916717529297, 179.37501525878906,\n 179.45835876464844, 179.5416717529297, 179.62501525878906,\n 179.70835876464844, 179.7916717529297, 179.87501525878906,\n 179.95835876464844],\n dtype='float32', name='lon', length=4320))timePandasIndexPandasIndex(DatetimeIndex(['2011-01-01', '2011-02-01', '2011-03-01', '2011-04-01',\n '2011-05-01', '2011-06-01', '2011-07-01', '2011-08-01',\n '2011-09-01', '2011-10-01',\n ...\n '2022-03-01', '2022-04-01', '2022-05-01', '2022-06-01',\n '2022-07-01', '2022-08-01', '2022-09-01', '2022-10-01',\n '2022-11-01', '2023-01-01'],\n dtype='datetime64[ns]', name='time', length=143, freq=None))Attributes: (59)product_name :AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.ncinstrument :MODIStitle :MODISA Level-3 Standard Mapped Imageproject :Ocean Biology Processing Group (NASA/GSFC/OBPG)platform :Aquatemporal_range :monthprocessing_version :R2019.0date_created :2019-12-17T18:28:57.000Zhistory :l3mapgen par=AQUA_MODIS.20110101_20110131.L3m.MO.SST4.sst4.9km.nc.param l2_flag_names :LAND,~HISOLZENtime_coverage_start :2010-12-31T12:10:01.000Ztime_coverage_end :2011-01-31T14:29:59.000Zstart_orbit_number :46065end_orbit_number :46518map_projection :Equidistant Cylindricallatitude_units :degrees_northlongitude_units :degrees_eastnorthernmost_latitude :90.0southernmost_latitude :-90.0westernmost_longitude :-180.0easternmost_longitude :180.0geospatial_lat_max :90.0geospatial_lat_min :-90.0geospatial_lon_max :180.0geospatial_lon_min :-180.0latitude_step :0.083333336longitude_step :0.083333336sw_point_latitude :-89.958336sw_point_longitude :-179.95833spatialResolution :9.28 kmgeospatial_lon_resolution :0.083333336geospatial_lat_resolution :0.083333336geospatial_lat_units :degrees_northgeospatial_lon_units :degrees_eastnumber_of_lines :2160number_of_columns :4320measure :Meansuggested_image_scaling_minimum :-2.0suggested_image_scaling_maximum :45.0suggested_image_scaling_type :LINEARsuggested_image_scaling_applied :No_lastModified :2019-12-17T18:28:57.000ZConventions :CF-1.6 ACDD-1.3institution :NASA Goddard Space Flight Center, Ocean Ecology Laboratory, Ocean Biology Processing Groupstandard_name_vocabulary :CF Standard Name Table v36naming_authority :gov.nasa.gsfc.sci.oceandataid :AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nc/L3/AQUA_MODIS.20110101_20110131.L3b.MO.SST4.nclicense :https://science.nasa.gov/earth-science/earth-science-data/data-information-policy/creator_name :NASA/GSFC/OBPGpublisher_name :NASA/GSFC/OBPGcreator_email :data@oceancolor.gsfc.nasa.govpublisher_email :data@oceancolor.gsfc.nasa.govcreator_url :https://oceandata.sci.gsfc.nasa.govpublisher_url :https://oceandata.sci.gsfc.nasa.govprocessing_level :L3 Mappedcdm_data_type :griddata_bins :4834400data_minimum :-1.635data_maximum :32.06999\n\n\n\nPlot a subset of the data\nUse the function xarray.DataSet.sel to select a subset of the data at the outlet of the Amazon to plot with hvplot.\n\nlat_bnds, lon_bnds = [6,-2], [-52, -44] \nds_MODIS_subset = ds_MODIS.sel(lat=slice(*lat_bnds), lon=slice(*lon_bnds))\nds_MODIS_subset\n\nds_MODIS_subset.sst4.hvplot.image(y='lat', x='lon', cmap='viridis').opts(clim=(22,30))", "crumbs": [ "Tutorials", "Cloud vs. Local Workflows", @@ -4172,7 +4172,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html#discovery", "title": "Sentinel-6 MF L2 Altimetry: OPeNDAP Access and Gridding", "section": "Discovery", - "text": "Discovery\nThe unique ‘concept-id’ assigned to each PO.DAAC dataset, or ‘collection’, within the Earthdata system is functionally the same as the ShortName in the context of PO.DAAC’s collections in the cloud (because we also assign unique ShortNames). This cell is downloading metadata to retrieve that identifier from an external source, then download metadata about the series of files that make up the time series for the cycle specified by the variable ‘cycle’, and merging to table.\n\nSearch for files/granules\nPick any cycle after cycle 25, which was around the time of the first release of data from S6A. (This cell calls three functions defined in the cell above.)\n\ncycle = 25\n\nname = \"JASON_CS_S6A_L2_ALT_LR_RED_OST_NRT_F\"\n\nconcept_id = get_collection(ShortName=name).get(\"meta\").get(\"concept-id\")\n\ngranules = get_granules(name, cycle=cycle) \n\ngranules[['GranuleUR', 'Start', 'End']].set_index(\"GranuleUR\")\n\n\n\n\n\n\n\n\n\nStart\nEnd\n\n\nGranuleUR\n\n\n\n\n\n\nS6A_P4_2__LR_RED__NR_025_001_20210713T162644_20210713T182234_F02\n2021-07-13T16:26:44.514Z\n2021-07-13T18:22:34.471Z\n\n\nS6A_P4_2__LR_RED__NR_025_003_20210713T182234_20210713T201839_F02\n2021-07-13T18:22:34.522Z\n2021-07-13T20:18:39.482Z\n\n\nS6A_P4_2__LR_RED__NR_025_006_20210713T201839_20210713T215450_F02\n2021-07-13T20:18:39.532Z\n2021-07-13T21:54:50.473Z\n\n\nS6A_P4_2__LR_RED__NR_025_007_20210713T215450_20210713T234732_F02\n2021-07-13T21:54:50.523Z\n2021-07-13T23:47:32.482Z\n\n\nS6A_P4_2__LR_RED__NR_025_009_20210713T234732_20210714T014224_F02\n2021-07-13T23:47:32.533Z\n2021-07-14T01:42:24.454Z\n\n\n...\n...\n...\n\n\nS6A_P4_2__LR_RED__NR_025_245_20210723T050533_20210723T064603_F02\n2021-07-23T05:05:33.543Z\n2021-07-23T06:46:03.471Z\n\n\nS6A_P4_2__LR_RED__NR_025_247_20210723T064603_20210723T083817_F02\n2021-07-23T06:46:03.521Z\n2021-07-23T08:38:17.483Z\n\n\nS6A_P4_2__LR_RED__NR_025_249_20210723T083817_20210723T103256_F02\n2021-07-23T08:38:17.533Z\n2021-07-23T10:32:56.490Z\n\n\nS6A_P4_2__LR_RED__NR_025_251_20210723T103256_20210723T122904_F02\n2021-07-23T10:32:56.540Z\n2021-07-23T12:29:04.459Z\n\n\nS6A_P4_2__LR_RED__NR_025_253_20210723T122904_20210723T142514_F02\n2021-07-23T12:29:04.509Z\n2021-07-23T14:25:14.452Z\n\n\n\n\n125 rows × 2 columns", + "text": "Discovery\nThe unique ‘concept-id’ assigned to each PO.DAAC dataset, or ‘collection’, within the Earthdata system is functionally the same as the ShortName in the context of PO.DAAC’s collections in the cloud (because we also assign unique ShortNames). This cell is downloading metadata to retrieve that identifier from an external source, then download metadata about the series of files that make up the time series for the cycle specified by the variable ‘cycle’, and merging to table.\n\nSearch for files/granules\nPick any cycle after cycle 25, which was around the time of the first release of data from S6A. (This cell calls three functions defined in the cell above.)\n\ncycle = 25\n\nname = \"JASON_CS_S6A_L2_ALT_LR_RED_OST_NRT_F\"\n\nconcept_id = get_collection(ShortName=name).get(\"meta\").get(\"concept-id\")\n\ngranules = get_granules(name, cycle=cycle) \n\ngranules[['GranuleUR', 'Start', 'End']].set_index(\"GranuleUR\")\n\n\n\n\n\n\n\n\nStart\nEnd\n\n\nGranuleUR\n\n\n\n\n\n\nS6A_P4_2__LR_RED__NR_025_001_20210713T162644_20210713T182234_F02\n2021-07-13T16:26:44.514Z\n2021-07-13T18:22:34.471Z\n\n\nS6A_P4_2__LR_RED__NR_025_003_20210713T182234_20210713T201839_F02\n2021-07-13T18:22:34.522Z\n2021-07-13T20:18:39.482Z\n\n\nS6A_P4_2__LR_RED__NR_025_006_20210713T201839_20210713T215450_F02\n2021-07-13T20:18:39.532Z\n2021-07-13T21:54:50.473Z\n\n\nS6A_P4_2__LR_RED__NR_025_007_20210713T215450_20210713T234732_F02\n2021-07-13T21:54:50.523Z\n2021-07-13T23:47:32.482Z\n\n\nS6A_P4_2__LR_RED__NR_025_009_20210713T234732_20210714T014224_F02\n2021-07-13T23:47:32.533Z\n2021-07-14T01:42:24.454Z\n\n\n...\n...\n...\n\n\nS6A_P4_2__LR_RED__NR_025_245_20210723T050533_20210723T064603_F02\n2021-07-23T05:05:33.543Z\n2021-07-23T06:46:03.471Z\n\n\nS6A_P4_2__LR_RED__NR_025_247_20210723T064603_20210723T083817_F02\n2021-07-23T06:46:03.521Z\n2021-07-23T08:38:17.483Z\n\n\nS6A_P4_2__LR_RED__NR_025_249_20210723T083817_20210723T103256_F02\n2021-07-23T08:38:17.533Z\n2021-07-23T10:32:56.490Z\n\n\nS6A_P4_2__LR_RED__NR_025_251_20210723T103256_20210723T122904_F02\n2021-07-23T10:32:56.540Z\n2021-07-23T12:29:04.459Z\n\n\nS6A_P4_2__LR_RED__NR_025_253_20210723T122904_20210723T142514_F02\n2021-07-23T12:29:04.509Z\n2021-07-23T14:25:14.452Z\n\n\n\n\n125 rows × 2 columns", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4198,7 +4198,7 @@ "href": "notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html#process", "title": "Sentinel-6 MF L2 Altimetry: OPeNDAP Access and Gridding", "section": "Process", - "text": "Process\n\n0.5-degree grid from ECCO V4r4 (int)\n\nAcknowledgement: pyresample approach shared by Ian Fenty, NASA JPL/ECCO.\n\nECCO V4r4 products are distributed in two spatial formats. One set of collections provides the ocean state estimates on the native model grid (LLC0090) and the other provides them after interpolating to a regular grid defined in geographic coordinates with horizontal cell size of 0.5-degrees. The latitude/longitude grid is distributed as its own collection in one netcdf file: https://search.earthdata.nasa.gov/search/granules?p=C2013583732-POCLOUD\nDownload the ECCO grid geometry netcdf from its https download endpoint in NASA Earthdata Cloud. Open the file and print the header content for the maskC variable, which contains a boolean mask representing the wet/dry state of the area contained in each cell of a 3d grid with dimensions mapped to Z, latitude, and longitude.\n\necco_file = download(\"https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/\"\n \"ECCO_L4_GEOMETRY_05DEG_V4R4/GRID_GEOMETRY_ECCO_V4r4_latlon_0p50deg.nc\")\n\necco_grid = xr.open_dataset(ecco_file).isel(Z=0) # select 0 on z-axis\n\necco_mask = ecco_grid.maskC\n\nprint(ecco_grid)\n\n<xarray.Dataset>\nDimensions: (latitude: 360, longitude: 720, nv: 2)\nCoordinates:\n Z float32 -5.0\n * latitude (latitude) float32 -89.75 -89.25 -88.75 ... 89.25 89.75\n * longitude (longitude) float32 -179.8 -179.2 -178.8 ... 179.2 179.8\n latitude_bnds (latitude, nv) float32 ...\n longitude_bnds (longitude, nv) float32 ...\n Z_bnds (nv) float32 ...\nDimensions without coordinates: nv\nData variables:\n hFacC (latitude, longitude) float64 ...\n Depth (latitude, longitude) float64 ...\n area (latitude, longitude) float64 ...\n drF float32 ...\n maskC (latitude, longitude) bool ...\nAttributes: (12/57)\n acknowledgement: This research was carried out by the Jet...\n author: Ian Fenty and Ou Wang\n cdm_data_type: Grid\n comment: Fields provided on a regular lat-lon gri...\n Conventions: CF-1.8, ACDD-1.3\n coordinates_comment: Note: the global 'coordinates' attribute...\n ... ...\n references: ECCO Consortium, Fukumori, I., Wang, O.,...\n source: The ECCO V4r4 state estimate was produce...\n standard_name_vocabulary: NetCDF Climate and Forecast (CF) Metadat...\n summary: This dataset provides geometric paramete...\n title: ECCO Geometry Parameters for the 0.5 deg...\n uuid: b4795c62-86e5-11eb-9c5f-f8f21e2ee3e0\n\n\n\n\nGet ssha variable on 0.5-degree grid\nResample ssha data using kd-tree gaussian weighting neighbour approach. Define a function that implements the following steps:\n\nGenerate two 2d arrays of lats/lons using the permuted 1d coordinates from an input gridded dataset.\nDefine the target grid geometry using the 2d arrays of lats/lons.\nDefine the source grid geometry using the 1d arrays of lats/lons from an input dataset.\n\n\nimport warnings\n\ndef l2alt2grid(source: xr.DataArray, target: xr.DataArray, **options):\n nans = ~np.isnan(source.values)\n data = source.values[nans]\n\n lats = source.latitude.values[nans]\n lons = (source.longitude.values[nans] + 180) % 360 - 180\n src = pr.SwathDefinition(lons, lats)\n\n lons1d = target.longitude.values\n lats1d = target.latitude.values\n lons2d, lats2d = np.meshgrid(lons1d, lats1d)\n tgt = pr.SwathDefinition(lons2d, lats2d)\n\n with warnings.catch_warnings():\n warnings.filterwarnings(\"ignore\", category=UserWarning)\n res, std, cnt = resample_gauss(src, data, tgt, **options)\n \n coords = {'latitude': lats1d, 'longitude': lons1d}\n return (xr.DataArray(res, coords=coords),\n xr.DataArray(std, coords=coords),\n xr.DataArray(cnt, coords=coords), )\n\nSet the gridding parameters in the python dictionary below; then pass it to the function as the last of three required positional arguments (the first two are the source dataset and the dataset that provides the target grid geometry).\n\ngridding_options = dict(\n radius_of_influence = 175000, \n sigmas = 25000,\n neighbours = 100,\n fill_value = np.nan,\n with_uncert = True\n)\n\nresult, stddev, counts = l2alt2grid(ds.ssha, ecco_mask, **gridding_options)\n\nresult.shape == (ecco_grid.latitude.size, \n ecco_grid.longitude.size)\n\nTrue\n\n\n\n\nPlot gridded ssha, gridding statistics\nPlot each array for the output ‘grid’ and the grid statistics ‘stddev’ and ‘counts’.\n\nresult.sel(latitude=slice(-66.,66.)).plot(cmap=\"jet\", vmin=-0.4, vmax=0.4, figsize=(15,6))\n\n\n\n\n\n\n\n\nLook at this plot and adjust gridding parameters as needed to refine ssha grid.\n\nstddev.sel(latitude=slice(-67.,67.)).plot(cmap=\"jet\", robust=True, figsize=(15,6))\n\n\n\n\n\n\n\n\na guess: the yellow areas with lower counts correspond to pass positions at the start/end of the cycle.\n\ncounts.sel(latitude=slice(-67.,67.)).plot(cmap=\"jet\", robust=True, figsize=(15,6))\n\n\n\n\n\n\n\n\n\nresult.sel(latitude=slice(-66.,66.)).to_pandas().T.describe().T\n\n\n\n\n\n\n\n\n\ncount\nmean\nstd\nmin\n25%\n50%\n75%\nmax\n\n\nlatitude\n\n\n\n\n\n\n\n\n\n\n\n\n-65.75\n304.0\n0.209026\n0.830608\n-1.471174\n-0.069080\n0.039957\n0.259600\n6.104942\n\n\n-65.25\n316.0\n0.216497\n0.479879\n-0.793696\n0.002569\n0.080189\n0.301957\n3.173239\n\n\n-64.75\n326.0\n0.218253\n0.465126\n-0.593413\n0.008729\n0.085963\n0.296550\n2.885002\n\n\n-64.25\n332.0\n0.090540\n0.453919\n-0.909328\n-0.030323\n0.040090\n0.097437\n2.914544\n\n\n-63.75\n371.0\n0.029598\n0.379806\n-0.884937\n-0.064511\n0.001728\n0.062316\n2.879200\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n63.75\n310.0\n0.034539\n0.133022\n-0.580132\n-0.010876\n0.038027\n0.081060\n0.806144\n\n\n64.25\n314.0\n0.018076\n0.118825\n-0.690086\n-0.016610\n0.036694\n0.077421\n0.286705\n\n\n64.75\n311.0\n-0.085785\n1.264886\n-19.397700\n-0.022718\n0.041526\n0.080252\n1.397690\n\n\n65.25\n307.0\n4.177751\n42.431829\n-23.955439\n-0.043362\n0.043002\n0.090967\n505.812000\n\n\n65.75\n290.0\n3.392658\n34.873463\n-10.643720\n-0.075147\n0.058857\n0.105139\n430.164759\n\n\n\n\n264 rows × 8 columns", + "text": "Process\n\n0.5-degree grid from ECCO V4r4 (int)\n\nAcknowledgement: pyresample approach shared by Ian Fenty, NASA JPL/ECCO.\n\nECCO V4r4 products are distributed in two spatial formats. One set of collections provides the ocean state estimates on the native model grid (LLC0090) and the other provides them after interpolating to a regular grid defined in geographic coordinates with horizontal cell size of 0.5-degrees. The latitude/longitude grid is distributed as its own collection in one netcdf file: https://search.earthdata.nasa.gov/search/granules?p=C2013583732-POCLOUD\nDownload the ECCO grid geometry netcdf from its https download endpoint in NASA Earthdata Cloud. Open the file and print the header content for the maskC variable, which contains a boolean mask representing the wet/dry state of the area contained in each cell of a 3d grid with dimensions mapped to Z, latitude, and longitude.\n\necco_file = download(\"https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/\"\n \"ECCO_L4_GEOMETRY_05DEG_V4R4/GRID_GEOMETRY_ECCO_V4r4_latlon_0p50deg.nc\")\n\necco_grid = xr.open_dataset(ecco_file).isel(Z=0) # select 0 on z-axis\n\necco_mask = ecco_grid.maskC\n\nprint(ecco_grid)\n\n<xarray.Dataset>\nDimensions: (latitude: 360, longitude: 720, nv: 2)\nCoordinates:\n Z float32 -5.0\n * latitude (latitude) float32 -89.75 -89.25 -88.75 ... 89.25 89.75\n * longitude (longitude) float32 -179.8 -179.2 -178.8 ... 179.2 179.8\n latitude_bnds (latitude, nv) float32 ...\n longitude_bnds (longitude, nv) float32 ...\n Z_bnds (nv) float32 ...\nDimensions without coordinates: nv\nData variables:\n hFacC (latitude, longitude) float64 ...\n Depth (latitude, longitude) float64 ...\n area (latitude, longitude) float64 ...\n drF float32 ...\n maskC (latitude, longitude) bool ...\nAttributes: (12/57)\n acknowledgement: This research was carried out by the Jet...\n author: Ian Fenty and Ou Wang\n cdm_data_type: Grid\n comment: Fields provided on a regular lat-lon gri...\n Conventions: CF-1.8, ACDD-1.3\n coordinates_comment: Note: the global 'coordinates' attribute...\n ... ...\n references: ECCO Consortium, Fukumori, I., Wang, O.,...\n source: The ECCO V4r4 state estimate was produce...\n standard_name_vocabulary: NetCDF Climate and Forecast (CF) Metadat...\n summary: This dataset provides geometric paramete...\n title: ECCO Geometry Parameters for the 0.5 deg...\n uuid: b4795c62-86e5-11eb-9c5f-f8f21e2ee3e0\n\n\n\n\nGet ssha variable on 0.5-degree grid\nResample ssha data using kd-tree gaussian weighting neighbour approach. Define a function that implements the following steps:\n\nGenerate two 2d arrays of lats/lons using the permuted 1d coordinates from an input gridded dataset.\nDefine the target grid geometry using the 2d arrays of lats/lons.\nDefine the source grid geometry using the 1d arrays of lats/lons from an input dataset.\n\n\nimport warnings\n\ndef l2alt2grid(source: xr.DataArray, target: xr.DataArray, **options):\n nans = ~np.isnan(source.values)\n data = source.values[nans]\n\n lats = source.latitude.values[nans]\n lons = (source.longitude.values[nans] + 180) % 360 - 180\n src = pr.SwathDefinition(lons, lats)\n\n lons1d = target.longitude.values\n lats1d = target.latitude.values\n lons2d, lats2d = np.meshgrid(lons1d, lats1d)\n tgt = pr.SwathDefinition(lons2d, lats2d)\n\n with warnings.catch_warnings():\n warnings.filterwarnings(\"ignore\", category=UserWarning)\n res, std, cnt = resample_gauss(src, data, tgt, **options)\n \n coords = {'latitude': lats1d, 'longitude': lons1d}\n return (xr.DataArray(res, coords=coords),\n xr.DataArray(std, coords=coords),\n xr.DataArray(cnt, coords=coords), )\n\nSet the gridding parameters in the python dictionary below; then pass it to the function as the last of three required positional arguments (the first two are the source dataset and the dataset that provides the target grid geometry).\n\ngridding_options = dict(\n radius_of_influence = 175000, \n sigmas = 25000,\n neighbours = 100,\n fill_value = np.nan,\n with_uncert = True\n)\n\nresult, stddev, counts = l2alt2grid(ds.ssha, ecco_mask, **gridding_options)\n\nresult.shape == (ecco_grid.latitude.size, \n ecco_grid.longitude.size)\n\nTrue\n\n\n\n\nPlot gridded ssha, gridding statistics\nPlot each array for the output ‘grid’ and the grid statistics ‘stddev’ and ‘counts’.\n\nresult.sel(latitude=slice(-66.,66.)).plot(cmap=\"jet\", vmin=-0.4, vmax=0.4, figsize=(15,6))\n\n\n\n\n\n\n\n\nLook at this plot and adjust gridding parameters as needed to refine ssha grid.\n\nstddev.sel(latitude=slice(-67.,67.)).plot(cmap=\"jet\", robust=True, figsize=(15,6))\n\n\n\n\n\n\n\n\na guess: the yellow areas with lower counts correspond to pass positions at the start/end of the cycle.\n\ncounts.sel(latitude=slice(-67.,67.)).plot(cmap=\"jet\", robust=True, figsize=(15,6))\n\n\n\n\n\n\n\n\n\nresult.sel(latitude=slice(-66.,66.)).to_pandas().T.describe().T\n\n\n\n\n\n\n\n\ncount\nmean\nstd\nmin\n25%\n50%\n75%\nmax\n\n\nlatitude\n\n\n\n\n\n\n\n\n\n\n\n\n-65.75\n304.0\n0.209026\n0.830608\n-1.471174\n-0.069080\n0.039957\n0.259600\n6.104942\n\n\n-65.25\n316.0\n0.216497\n0.479879\n-0.793696\n0.002569\n0.080189\n0.301957\n3.173239\n\n\n-64.75\n326.0\n0.218253\n0.465126\n-0.593413\n0.008729\n0.085963\n0.296550\n2.885002\n\n\n-64.25\n332.0\n0.090540\n0.453919\n-0.909328\n-0.030323\n0.040090\n0.097437\n2.914544\n\n\n-63.75\n371.0\n0.029598\n0.379806\n-0.884937\n-0.064511\n0.001728\n0.062316\n2.879200\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n63.75\n310.0\n0.034539\n0.133022\n-0.580132\n-0.010876\n0.038027\n0.081060\n0.806144\n\n\n64.25\n314.0\n0.018076\n0.118825\n-0.690086\n-0.016610\n0.036694\n0.077421\n0.286705\n\n\n64.75\n311.0\n-0.085785\n1.264886\n-19.397700\n-0.022718\n0.041526\n0.080252\n1.397690\n\n\n65.25\n307.0\n4.177751\n42.431829\n-23.955439\n-0.043362\n0.043002\n0.090967\n505.812000\n\n\n65.75\n290.0\n3.392658\n34.873463\n-10.643720\n-0.075147\n0.058857\n0.105139\n430.164759\n\n\n\n\n264 rows × 8 columns", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4248,7 +4248,7 @@ "href": "notebooks/meetings_workshops/arctic_2019.html#smap-dataset", "title": "Ocean Satellite and In-situ Comparison in the Cloud", "section": "SMAP dataset", - "text": "SMAP dataset\nSearch for and open this dataset as an example of using Earthaccess\n\nauth = earthaccess.login(strategy=\"netrc\")\n\nYou're now authenticated with NASA Earthdata Login\nUsing token with expiration date: 06/18/2023\nUsing .netrc file for EDL\n\n\n\nshort_name=\"SMAP_RSS_L3_SSS_SMI_8DAY-RUNNINGMEAN_V5\"\n\nresults = earthaccess.search_data(\n short_name=short_name,\n cloud_hosted=True,\n temporal=(\"2019-05-01T00:00:00\", \"2019-10-01T00:00:00\"),\n bounding_box=(-170,65,-160,71) # (west, south, east, north)\n)\n\nGranules found: 122\n\n\n\nds_sss = xr.open_mfdataset(earthaccess.open(results))\n\n Opening 122 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\nplot_west = -170\nplot_east = -160\nplot_south = 60\nplot_north = 75\n\nlat_bnds, lon_bnds = [plot_south, plot_north], [plot_west+360, plot_east+360] # Turn the longitudes in (-180,0) to (0,360)\nds_sss_subset_0 = ds_sss.sel(lat=slice(*lat_bnds), lon=slice(*lon_bnds))\nds_sss_subset_0['latitude'] = ds_sss_subset_0.lat\nds_sss_subset_0['longitude'] = ds_sss_subset_0.lon-360\nds_sss_subset = ds_sss_subset_0.swap_dims({'lat':'latitude', 'lon':'longitude'})\nds_sss_subset\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 40, latitude: 60, time: 122,\n uncertainty_components: 9, iceflag_components: 3)\nCoordinates:\n lon (longitude) float32 190.1 190.4 ... 199.6 199.9\n lat (latitude) float32 60.12 60.38 60.62 ... 74.62 74.88\n * time (time) datetime64[ns] 2019-04-27T12:00:00 ... 201...\n * latitude (latitude) float32 60.12 60.38 60.62 ... 74.62 74.88\n * longitude (longitude) float32 -169.9 -169.6 ... -160.4 -160.1\nDimensions without coordinates: uncertainty_components, iceflag_components\nData variables: (12/19)\n nobs (time, latitude, longitude) float64 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n nobs_RF (time, latitude, longitude) float64 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n nobs_40km (time, latitude, longitude) float64 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sss_smap (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sss_smap_RF (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sss_smap_unc (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n ... ...\n fland (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n gice_est (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n surtep (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n winspd (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sea_ice_zones (time, latitude, longitude) int8 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n anc_sea_ice_flag (time, latitude, longitude, iceflag_components) int8 dask.array<chunksize=(1, 60, 40, 3), meta=np.ndarray>\nAttributes: (12/65)\n Conventions: CF-1.7, ACDD-1.3\n title: SMAP ocean surfac...\n version: V5.0 Validated Re...\n summary: The dataset conta...\n acknowledgement: Funded under Subc...\n processing_level: L3\n ... ...\n Source_of_SMAP_SSS_retrievals: T. Meissner, F. W...\n Source_of_ancillary_SST: Canada Meteorolog...\n Source_of_ancillary_CCMP_wind_speed: Mears, C. et al.,...\n Source_of_ancillary_AMSR2_sea_ice_flag_and_correction: Meissner, T. and ...\n Source_of_ancillary_land_mask: 1 km land/water m...\n Source_of_ancillary_reference_SSS_from_HYCOM: Hybrid Coordinate...xarray.DatasetDimensions:longitude: 40latitude: 60time: 122uncertainty_components: 9iceflag_components: 3Coordinates: (5)lon(longitude)float32190.1 190.4 190.6 ... 199.6 199.9standard_name :longitudeaxis :Xlong_name :center longitude of grid cellunits :degrees_eastvalid_min :0.0valid_max :360.0coverage_content_type :coordinatearray([190.125, 190.375, 190.625, 190.875, 191.125, 191.375, 191.625, 191.875,\n 192.125, 192.375, 192.625, 192.875, 193.125, 193.375, 193.625, 193.875,\n 194.125, 194.375, 194.625, 194.875, 195.125, 195.375, 195.625, 195.875,\n 196.125, 196.375, 196.625, 196.875, 197.125, 197.375, 197.625, 197.875,\n 198.125, 198.375, 198.625, 198.875, 199.125, 199.375, 199.625, 199.875],\n dtype=float32)lat(latitude)float3260.12 60.38 60.62 ... 74.62 74.88standard_name :latitudeaxis :Ylong_name :center latitude of grid cellunits :degrees_northvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([60.125, 60.375, 60.625, 60.875, 61.125, 61.375, 61.625, 61.875, 62.125,\n 62.375, 62.625, 62.875, 63.125, 63.375, 63.625, 63.875, 64.125, 64.375,\n 64.625, 64.875, 65.125, 65.375, 65.625, 65.875, 66.125, 66.375, 66.625,\n 66.875, 67.125, 67.375, 67.625, 67.875, 68.125, 68.375, 68.625, 68.875,\n 69.125, 69.375, 69.625, 69.875, 70.125, 70.375, 70.625, 70.875, 71.125,\n 71.375, 71.625, 71.875, 72.125, 72.375, 72.625, 72.875, 73.125, 73.375,\n 73.625, 73.875, 74.125, 74.375, 74.625, 74.875], dtype=float32)time(time)datetime64[ns]2019-04-27T12:00:00 ... 2019-10-...standard_name :timeaxis :Tlong_name :reference time of analyzed variable field corresponding to center of the product time intervalcoverage_content_type :coordinatearray(['2019-04-27T12:00:00.000000000', '2019-04-28T12:00:00.000000000',\n '2019-04-29T12:00:00.000000000', '2019-04-30T12:00:00.000000000',\n '2019-05-01T12:00:00.000000000', '2019-05-02T12:00:00.000000000',\n '2019-05-03T12:00:00.000000000', '2019-05-04T12:00:00.000000000',\n '2019-05-05T12:00:00.000000000', '2019-05-06T12:00:00.000000000',\n '2019-05-07T12:00:00.000000000', '2019-05-08T12:00:00.000000000',\n '2019-05-09T12:00:00.000000000', '2019-05-10T12:00:00.000000000',\n '2019-05-11T12:00:00.000000000', '2019-05-12T12:00:00.000000000',\n '2019-05-13T12:00:00.000000000', '2019-05-14T12:00:00.000000000',\n '2019-05-15T12:00:00.000000000', '2019-05-16T12:00:00.000000000',\n '2019-05-17T12:00:00.000000000', '2019-05-18T12:00:00.000000000',\n '2019-05-19T12:00:00.000000000', '2019-05-20T12:00:00.000000000',\n '2019-05-21T12:00:00.000000000', '2019-05-22T12:00:00.000000000',\n '2019-05-23T12:00:00.000000000', '2019-05-24T12:00:00.000000000',\n '2019-05-25T12:00:00.000000000', '2019-05-26T12:00:00.000000000',\n '2019-05-27T12:00:00.000000000', '2019-05-28T12:00:00.000000000',\n '2019-05-29T12:00:00.000000000', '2019-05-30T12:00:00.000000000',\n '2019-05-31T12:00:00.000000000', '2019-06-01T12:00:00.000000000',\n '2019-06-02T12:00:00.000000000', '2019-06-03T12:00:00.000000000',\n '2019-06-04T12:00:00.000000000', '2019-06-05T12:00:00.000000000',\n '2019-06-06T12:00:00.000000000', '2019-06-07T12:00:00.000000000',\n '2019-06-08T12:00:00.000000000', '2019-06-09T12:00:00.000000000',\n '2019-06-10T12:00:00.000000000', '2019-06-11T12:00:00.000000000',\n '2019-06-12T12:00:00.000000000', '2019-06-13T12:00:00.000000000',\n '2019-06-14T12:00:00.000000000', '2019-06-15T12:00:00.000000000',\n '2019-06-16T12:00:00.000000000', '2019-07-26T12:00:00.000000000',\n '2019-07-27T12:00:00.000000000', '2019-07-28T12:00:00.000000000',\n '2019-07-29T12:00:00.000000000', '2019-07-30T12:00:00.000000000',\n '2019-07-31T12:00:00.000000000', '2019-08-01T12:00:00.000000000',\n '2019-08-02T12:00:00.000000000', '2019-08-03T12:00:00.000000000',\n '2019-08-04T12:00:00.000000000', '2019-08-05T12:00:00.000000000',\n '2019-08-06T12:00:00.000000000', '2019-08-07T12:00:00.000000000',\n '2019-08-08T12:00:00.000000000', '2019-08-09T12:00:00.000000000',\n '2019-08-10T12:00:00.000000000', '2019-08-11T12:00:00.000000000',\n '2019-08-12T12:00:00.000000000', '2019-08-13T12:00:00.000000000',\n '2019-08-14T12:00:00.000000000', '2019-08-15T12:00:00.000000000',\n '2019-08-16T12:00:00.000000000', '2019-08-17T12:00:00.000000000',\n '2019-08-18T12:00:00.000000000', '2019-08-19T12:00:00.000000000',\n '2019-08-20T12:00:00.000000000', '2019-08-21T12:00:00.000000000',\n '2019-08-22T12:00:00.000000000', '2019-08-23T12:00:00.000000000',\n '2019-08-24T12:00:00.000000000', '2019-08-25T12:00:00.000000000',\n '2019-08-26T12:00:00.000000000', '2019-08-27T12:00:00.000000000',\n '2019-08-28T12:00:00.000000000', '2019-08-29T12:00:00.000000000',\n '2019-08-30T12:00:00.000000000', '2019-08-31T12:00:00.000000000',\n '2019-09-01T12:00:00.000000000', '2019-09-02T12:00:00.000000000',\n '2019-09-03T12:00:00.000000000', '2019-09-04T12:00:00.000000000',\n '2019-09-05T12:00:00.000000000', '2019-09-06T12:00:00.000000000',\n '2019-09-07T12:00:00.000000000', '2019-09-08T12:00:00.000000000',\n '2019-09-09T12:00:00.000000000', '2019-09-10T12:00:00.000000000',\n '2019-09-11T12:00:00.000000000', '2019-09-12T12:00:00.000000000',\n '2019-09-13T12:00:00.000000000', '2019-09-14T12:00:00.000000000',\n '2019-09-15T12:00:00.000000000', '2019-09-16T12:00:00.000000000',\n '2019-09-17T12:00:00.000000000', '2019-09-18T12:00:00.000000000',\n '2019-09-19T12:00:00.000000000', '2019-09-20T12:00:00.000000000',\n '2019-09-21T12:00:00.000000000', '2019-09-22T12:00:00.000000000',\n '2019-09-23T12:00:00.000000000', '2019-09-24T12:00:00.000000000',\n '2019-09-25T12:00:00.000000000', '2019-09-26T12:00:00.000000000',\n '2019-09-27T12:00:00.000000000', '2019-09-28T12:00:00.000000000',\n '2019-09-29T12:00:00.000000000', '2019-09-30T12:00:00.000000000',\n '2019-10-01T12:00:00.000000000', '2019-10-02T12:00:00.000000000',\n '2019-10-03T12:00:00.000000000', '2019-10-04T12:00:00.000000000'],\n dtype='datetime64[ns]')latitude(latitude)float3260.12 60.38 60.62 ... 74.62 74.88standard_name :latitudeaxis :Ylong_name :center latitude of grid cellunits :degrees_northvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([60.125, 60.375, 60.625, 60.875, 61.125, 61.375, 61.625, 61.875, 62.125,\n 62.375, 62.625, 62.875, 63.125, 63.375, 63.625, 63.875, 64.125, 64.375,\n 64.625, 64.875, 65.125, 65.375, 65.625, 65.875, 66.125, 66.375, 66.625,\n 66.875, 67.125, 67.375, 67.625, 67.875, 68.125, 68.375, 68.625, 68.875,\n 69.125, 69.375, 69.625, 69.875, 70.125, 70.375, 70.625, 70.875, 71.125,\n 71.375, 71.625, 71.875, 72.125, 72.375, 72.625, 72.875, 73.125, 73.375,\n 73.625, 73.875, 74.125, 74.375, 74.625, 74.875], dtype=float32)longitude(longitude)float32-169.9 -169.6 ... -160.4 -160.1array([-169.875, -169.625, -169.375, -169.125, -168.875, -168.625, -168.375,\n -168.125, -167.875, -167.625, -167.375, -167.125, -166.875, -166.625,\n -166.375, -166.125, -165.875, -165.625, -165.375, -165.125, -164.875,\n -164.625, -164.375, -164.125, -163.875, -163.625, -163.375, -163.125,\n -162.875, -162.625, -162.375, -162.125, -161.875, -161.625, -161.375,\n -161.125, -160.875, -160.625, -160.375, -160.125], dtype=float32)Data variables: (19)nobs(time, latitude, longitude)float64dask.array<chunksize=(1, 60, 40), meta=np.ndarray>long_name :Number of observations for L3 average of SSS smoothed to approx 70km resolutionstandard_name :number_of_observationsunits :1valid_min :1valid_max :480coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.23 MiB\n18.75 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nnobs_RF\n\n\n(time, latitude, longitude)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nNumber of observations for L3 average of rain filtered SSS smoothed to approx 70km resolution\n\nstandard_name :\n\nnumber_of_observations\n\nunits :\n\n1\n\nvalid_min :\n\n1\n\nvalid_max :\n\n480\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.23 MiB\n18.75 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nnobs_40km\n\n\n(time, latitude, longitude)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nNumber of observations for L3 average of SSS at 40km resolution\n\nstandard_name :\n\nnumber_of_observations\n\nunits :\n\n1\n\nvalid_min :\n\n1\n\nvalid_max :\n\n480\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.23 MiB\n18.75 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nSMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_RF\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nRain filtered SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_unc\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntotal formal uncertainty estimate of SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_RF_unc\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntotal formal uncertainty estimate of rain filtered SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_unc_comp\n\n\n(time, uncertainty_components, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 9, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nformal uncertainty components of SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\ncomponents :\n\n1: ancillary wind speed random. 2: NEDT v-pol. 3: NEDT h-pol. 4: ancillary SST. 5: ancillary wind direction. 6: reflected galaxy. 7: land contamination. 8: sea ice contamination. 9: ancillary wind speed systematic.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n10.05 MiB\n84.38 kiB\n\n\nShape\n(122, 9, 60, 40)\n(1, 9, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 122 1 40 60 9\n\n\n\n\n\n\n\n\nsss_smap_40km\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nSMAP sea surface salinity at original 40km resolution\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_40km_unc\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntotal formal uncertainty estimate of SMAP sea surface salinity at original 40km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_40km_unc_comp\n\n\n(time, uncertainty_components, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 9, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nformal uncertainty components of SMAP sea surface salinity at original 40km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\ncomponents :\n\n1: ancillary wind speed random. 2: NEDT v-pol. 3: NEDT h-pol. 4: ancillary SST. 5: ancillary wind direction. 6: reflected galaxy. 7: land contamination. 8: sea ice contamination. 9: ancillary wind speed systematic.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n10.05 MiB\n84.38 kiB\n\n\nShape\n(122, 9, 60, 40)\n(1, 9, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 122 1 40 60 9\n\n\n\n\n\n\n\n\nsss_ref\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nReference sea surface salinity from HYCOM\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nreferenceInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\ngland\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naverage land fraction weighted by antenna gain\n\nstandard_name :\n\nland_area_fraction\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nfland\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naverage land fraction within 3dB contour\n\nstandard_name :\n\nland_area_fraction\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\ngice_est\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated sea ice fraction weighted by antenna gain\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsurtep\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nsea_surface_temperature\n\nlong_name :\n\nAncillary sea surface temperature (from CMC)\n\nunits :\n\nKelvin\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n313.15\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nwinspd\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nwind_speed\n\nlong_name :\n\nAncillary sea surface wind speed from CCMP NRT that is used in surface roughness correction\n\nunits :\n\nm s-1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n100.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsea_ice_zones\n\n\n(time, latitude, longitude)\n\n\nint8\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea-ice contamination zones at center day\n\nstandard_name :\n\nquality_flag\n\nunits :\n\n1\n\ncoverage_content_type :\n\nqualityInformation\n\nflag_meaning :\n\n0: open ocean scene. no sea-ice contamination. 1: likely sea-ice contamination in SMAP antenna sidelobes. SSS retrieved. 2: likely sea-ice contamination in SMAP antenna sidelobes. SSS retrieved. 3: likely sea-ice contamination in SMAP antenna mainlobe. SSS retrieved. 4: likely sea-ice contamination in SMAP antenna mainlobe. SSS retrieved. 5: likely sea-ice contamination in SMAP antenna mainlobe. no SSS retrieved. 6: AMSR2 50-km footprint contains land. sea-ice check not reliable. no SSS retrieved if AMSR-2 AS-ECV V8.2 sea-ice flag set. 7: no or invalid AMSR2 observation. sea-ice check not possible. no SSS retrieved if climatological sea-ice flag set.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n285.94 kiB\n2.34 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nanc_sea_ice_flag\n\n\n(time, latitude, longitude, iceflag_components)\n\n\nint8\n\n\ndask.array<chunksize=(1, 60, 40, 3), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nancillary sea-ice detection indicator at center day\n\nstandard_name :\n\nquality_flag\n\nunits :\n\n1\n\ncoverage_content_type :\n\nqualityInformation\n\nflag_meaning :\n\ncomponent 1 of anc_sea_ice_flag: climatological sea-ice flag. component 2 of anc_sea_ice_flag: sea-ice flag from AMSR2 RSS AS-ECV V8.2 3-day map. component 3 of anc_sea_ice_flag: sea-ice flag from Meissner and Manaster.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n857.81 kiB\n7.03 kiB\n\n\nShape\n(122, 60, 40, 3)\n(1, 60, 40, 3)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 122 1 3 40 60\n\n\n\n\n\nIndexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2019-04-27 12:00:00', '2019-04-28 12:00:00',\n '2019-04-29 12:00:00', '2019-04-30 12:00:00',\n '2019-05-01 12:00:00', '2019-05-02 12:00:00',\n '2019-05-03 12:00:00', '2019-05-04 12:00:00',\n '2019-05-05 12:00:00', '2019-05-06 12:00:00',\n ...\n '2019-09-25 12:00:00', '2019-09-26 12:00:00',\n '2019-09-27 12:00:00', '2019-09-28 12:00:00',\n '2019-09-29 12:00:00', '2019-09-30 12:00:00',\n '2019-10-01 12:00:00', '2019-10-02 12:00:00',\n '2019-10-03 12:00:00', '2019-10-04 12:00:00'],\n dtype='datetime64[ns]', name='time', length=122, freq=None))latitudePandasIndexPandasIndex(Index([60.125, 60.375, 60.625, 60.875, 61.125, 61.375, 61.625, 61.875, 62.125,\n 62.375, 62.625, 62.875, 63.125, 63.375, 63.625, 63.875, 64.125, 64.375,\n 64.625, 64.875, 65.125, 65.375, 65.625, 65.875, 66.125, 66.375, 66.625,\n 66.875, 67.125, 67.375, 67.625, 67.875, 68.125, 68.375, 68.625, 68.875,\n 69.125, 69.375, 69.625, 69.875, 70.125, 70.375, 70.625, 70.875, 71.125,\n 71.375, 71.625, 71.875, 72.125, 72.375, 72.625, 72.875, 73.125, 73.375,\n 73.625, 73.875, 74.125, 74.375, 74.625, 74.875],\n dtype='float32', name='latitude'))longitudePandasIndexPandasIndex(Index([-169.875, -169.625, -169.375, -169.125, -168.875, -168.625, -168.375,\n -168.125, -167.875, -167.625, -167.375, -167.125, -166.875, -166.625,\n -166.375, -166.125, -165.875, -165.625, -165.375, -165.125, -164.875,\n -164.625, -164.375, -164.125, -163.875, -163.625, -163.375, -163.125,\n -162.875, -162.625, -162.375, -162.125, -161.875, -161.625, -161.375,\n -161.125, -160.875, -160.625, -160.375, -160.125],\n dtype='float32', name='longitude'))Attributes: (65)Conventions :CF-1.7, ACDD-1.3title :SMAP ocean surface salinityversion :V5.0 Validated Releasesummary :The dataset contains the Level 3 8-day running averages of the NASA/RSS Version 5.0 SMAP Salinity Retrieval Algorithm. It includes all necessary ancillary data and the results of all intermediate steps. The data are gridded on a regular 0.25 deg Earth grid. For details see the Release Notes at https://www.remss.com/missions/smap/salinity/.acknowledgement :Funded under Subcontract No.1664013 between JPL and RSS: Production System for NASA Ocean Salinity Science Team (OSST).processing_level :L3resolution :Spatial resolution: approx 70kmhistory :created by T. Meissnerdate_created :2022-03-29 T12:02:30-0700date_modified :2022-03-29 T12:02:30-0700date_issued :2022-03-29 T12:02:30-0700date_metadata_modified :2022-03-29 T12:02:30-0700institution :Remote Sensing Systems, Santa Rosa, CA, USAsource :RSS SMAP-SSS v5.0 algorithmplatform :SMAPinstrument :SMAP radiometerproject :Production System for NASA Ocean Salinity Science Team (OSST)keywords :SURFACE SALINITY, SALINITY, SMAP, NASA, RSSkeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :CF Standard Name Table v78license :Nonecreator_name :Thomas Meissner, Remote Sensing Systemscreator_email :meissner@remss.comcreator_url :http://www.remss.com/missions/smappublisher_name :Thomas Meissner, Frank Wentz, Andrew Manaster, Richard Lindsley, Marty Brewer, Michael Densberger, Remote Sensing Systemspublisher_email :meissner@remss.compublisher_url :http://www.remss.com/missions/smapid :10.5067/SMP50-3SPCSnaming_authority :gov.nasa.earthdatadataset_citation_authors :T. Meissner, F. Wentz, A. Manaster, R. Lindsley, M. Brewer, M. Densbergerdataset_citation_year :2022dataset_citation_product :Remote Sensing Systems SMAP Level 3 Sea Surface Salinity Standard Mapped Image 8day runningdataset_citation_version :V5.0 Validated Releasedataset_citation_institution :Remote Sensing Systems, Santa Rosa, CA, USAdataset_citation_url :Available online at www.remss.com/missions/smapnetCDF_version_id :4comment :Major changes in V5.0: 1. sea-ice flag: based on AMSR-2 surface emissivties and discriminant analysis. 2. sea-ice correction included. 3. formal uncertainty estimates added.references :1. V5.0 Release Notes at https://www.remss.com/missions/smap/salinity/ 2. Meissner, T.; Wentz, F.J.; Le Vine, D.M. The Salinity Retrieval Algorithms for the NASA Aquarius Version 5 and SMAP Version 3 Releases. Remote Sens. 2018, 10, 1121. https://doi.org/10.3390/rs10071121 3. Meissner, T.; Manaster, A. SMAP Salinity Retrievals near the Sea-Ice Edge Using Multi-Channel AMSR2 Brightness Temperatures. Remote Sens. 2021, 13, 5120. https://doi.org/10.3390/rs13245120year_of_observation :2019center_day_of_observation :117first_orbit :22566last_orbit :22682time_coverage_start :2019-04-23T12:00:00Ztime_coverage_end :2019-05-01T12:00:00Ztime_coverage_duration :P8Dtime_coverage_resolution :P8Dcdm_data_type :gridgeospatial_bounds :2Dgeospatial_lat_min :-90.0geospatial_lat_max :90.0geospatial_lat_resolution :0.25geospatial_lat_units :degrees_northgeospatial_lon_min :0.0geospatial_lon_max :360.0geospatial_lon_resolution :0.25geospatial_lon_units :degrees_eastgeospatial_bounds_vertical_crs :EPSG:5831geospatial_vertical_min :0geospatial_vertical_max :0Source_of_SMAP_SSS_retrievals :T. Meissner, F. Wentz, A. Manaster, R. Lindsley, M. Brewer, M. Densberger, Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 5.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA doi: 10.5067/SMP50-2SOCS www.remss.com/missions/smap.Source_of_ancillary_SST :Canada Meteorological Center. 2016.GHRSST Level 4 CMC0.1deg Global Foundation Sea Surface Temperature Analysis (GDS version 2). Ver.3.3.doi: 10.5067/GHCMC-4FM03 http://dx.doi.org/10.5067/GHCMC-4FM03.Source_of_ancillary_CCMP_wind_speed :Mears, C. et al., 2018.Remote Sensing Systems CCMP NRT V2.0 wind speed and direction. Remote Sensing Systems, Santa Rosa, CA.Source_of_ancillary_AMSR2_sea_ice_flag_and_correction :Meissner, T. and A. Manaster, 2021. SMAP Salinity Retrievals near the Sea-Ice Edge Using Multi-Channel AMSR2 Brightness Temperatures. Remote Sens. 2021, 13, 5120. https://doi.org/10.3390/rs13245120.Source_of_ancillary_land_mask :1 km land/water mask from OCEAN DISCIPLINE PROCESSING SYSTEM (ODPS) based on World Vector Shoreline (WVS)database and World Data Bank. courtesy of Fred Patt, Goddard Space Flight Center, frederick.s.patt@nasa.gov.Source_of_ancillary_reference_SSS_from_HYCOM :Hybrid Coordinate Ocean Model, GLBa0.08/expt_90.9, Top layer salinity. Available at www.hycom.org.", + "text": "SMAP dataset\nSearch for and open this dataset as an example of using Earthaccess\n\nauth = earthaccess.login(strategy=\"netrc\")\n\nYou're now authenticated with NASA Earthdata Login\nUsing token with expiration date: 06/18/2023\nUsing .netrc file for EDL\n\n\n\nshort_name=\"SMAP_RSS_L3_SSS_SMI_8DAY-RUNNINGMEAN_V5\"\n\nresults = earthaccess.search_data(\n short_name=short_name,\n cloud_hosted=True,\n temporal=(\"2019-05-01T00:00:00\", \"2019-10-01T00:00:00\"),\n bounding_box=(-170,65,-160,71) # (west, south, east, north)\n)\n\nGranules found: 122\n\n\n\nds_sss = xr.open_mfdataset(earthaccess.open(results))\n\n Opening 122 granules, approx size: 0.0 GB\n\n\n\n\n\n\n\n\n\n\n\n\nplot_west = -170\nplot_east = -160\nplot_south = 60\nplot_north = 75\n\nlat_bnds, lon_bnds = [plot_south, plot_north], [plot_west+360, plot_east+360] # Turn the longitudes in (-180,0) to (0,360)\nds_sss_subset_0 = ds_sss.sel(lat=slice(*lat_bnds), lon=slice(*lon_bnds))\nds_sss_subset_0['latitude'] = ds_sss_subset_0.lat\nds_sss_subset_0['longitude'] = ds_sss_subset_0.lon-360\nds_sss_subset = ds_sss_subset_0.swap_dims({'lat':'latitude', 'lon':'longitude'})\nds_sss_subset\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (longitude: 40, latitude: 60, time: 122,\n uncertainty_components: 9, iceflag_components: 3)\nCoordinates:\n lon (longitude) float32 190.1 190.4 ... 199.6 199.9\n lat (latitude) float32 60.12 60.38 60.62 ... 74.62 74.88\n * time (time) datetime64[ns] 2019-04-27T12:00:00 ... 201...\n * latitude (latitude) float32 60.12 60.38 60.62 ... 74.62 74.88\n * longitude (longitude) float32 -169.9 -169.6 ... -160.4 -160.1\nDimensions without coordinates: uncertainty_components, iceflag_components\nData variables: (12/19)\n nobs (time, latitude, longitude) float64 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n nobs_RF (time, latitude, longitude) float64 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n nobs_40km (time, latitude, longitude) float64 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sss_smap (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sss_smap_RF (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sss_smap_unc (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n ... ...\n fland (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n gice_est (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n surtep (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n winspd (time, latitude, longitude) float32 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n sea_ice_zones (time, latitude, longitude) int8 dask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n anc_sea_ice_flag (time, latitude, longitude, iceflag_components) int8 dask.array<chunksize=(1, 60, 40, 3), meta=np.ndarray>\nAttributes: (12/65)\n Conventions: CF-1.7, ACDD-1.3\n title: SMAP ocean surfac...\n version: V5.0 Validated Re...\n summary: The dataset conta...\n acknowledgement: Funded under Subc...\n processing_level: L3\n ... ...\n Source_of_SMAP_SSS_retrievals: T. Meissner, F. W...\n Source_of_ancillary_SST: Canada Meteorolog...\n Source_of_ancillary_CCMP_wind_speed: Mears, C. et al.,...\n Source_of_ancillary_AMSR2_sea_ice_flag_and_correction: Meissner, T. and ...\n Source_of_ancillary_land_mask: 1 km land/water m...\n Source_of_ancillary_reference_SSS_from_HYCOM: Hybrid Coordinate...xarray.DatasetDimensions:longitude: 40latitude: 60time: 122uncertainty_components: 9iceflag_components: 3Coordinates: (5)lon(longitude)float32190.1 190.4 190.6 ... 199.6 199.9standard_name :longitudeaxis :Xlong_name :center longitude of grid cellunits :degrees_eastvalid_min :0.0valid_max :360.0coverage_content_type :coordinatearray([190.125, 190.375, 190.625, 190.875, 191.125, 191.375, 191.625, 191.875,\n 192.125, 192.375, 192.625, 192.875, 193.125, 193.375, 193.625, 193.875,\n 194.125, 194.375, 194.625, 194.875, 195.125, 195.375, 195.625, 195.875,\n 196.125, 196.375, 196.625, 196.875, 197.125, 197.375, 197.625, 197.875,\n 198.125, 198.375, 198.625, 198.875, 199.125, 199.375, 199.625, 199.875],\n dtype=float32)lat(latitude)float3260.12 60.38 60.62 ... 74.62 74.88standard_name :latitudeaxis :Ylong_name :center latitude of grid cellunits :degrees_northvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([60.125, 60.375, 60.625, 60.875, 61.125, 61.375, 61.625, 61.875, 62.125,\n 62.375, 62.625, 62.875, 63.125, 63.375, 63.625, 63.875, 64.125, 64.375,\n 64.625, 64.875, 65.125, 65.375, 65.625, 65.875, 66.125, 66.375, 66.625,\n 66.875, 67.125, 67.375, 67.625, 67.875, 68.125, 68.375, 68.625, 68.875,\n 69.125, 69.375, 69.625, 69.875, 70.125, 70.375, 70.625, 70.875, 71.125,\n 71.375, 71.625, 71.875, 72.125, 72.375, 72.625, 72.875, 73.125, 73.375,\n 73.625, 73.875, 74.125, 74.375, 74.625, 74.875], dtype=float32)time(time)datetime64[ns]2019-04-27T12:00:00 ... 2019-10-...standard_name :timeaxis :Tlong_name :reference time of analyzed variable field corresponding to center of the product time intervalcoverage_content_type :coordinatearray(['2019-04-27T12:00:00.000000000', '2019-04-28T12:00:00.000000000',\n '2019-04-29T12:00:00.000000000', '2019-04-30T12:00:00.000000000',\n '2019-05-01T12:00:00.000000000', '2019-05-02T12:00:00.000000000',\n '2019-05-03T12:00:00.000000000', '2019-05-04T12:00:00.000000000',\n '2019-05-05T12:00:00.000000000', '2019-05-06T12:00:00.000000000',\n '2019-05-07T12:00:00.000000000', '2019-05-08T12:00:00.000000000',\n '2019-05-09T12:00:00.000000000', '2019-05-10T12:00:00.000000000',\n '2019-05-11T12:00:00.000000000', '2019-05-12T12:00:00.000000000',\n '2019-05-13T12:00:00.000000000', '2019-05-14T12:00:00.000000000',\n '2019-05-15T12:00:00.000000000', '2019-05-16T12:00:00.000000000',\n '2019-05-17T12:00:00.000000000', '2019-05-18T12:00:00.000000000',\n '2019-05-19T12:00:00.000000000', '2019-05-20T12:00:00.000000000',\n '2019-05-21T12:00:00.000000000', '2019-05-22T12:00:00.000000000',\n '2019-05-23T12:00:00.000000000', '2019-05-24T12:00:00.000000000',\n '2019-05-25T12:00:00.000000000', '2019-05-26T12:00:00.000000000',\n '2019-05-27T12:00:00.000000000', '2019-05-28T12:00:00.000000000',\n '2019-05-29T12:00:00.000000000', '2019-05-30T12:00:00.000000000',\n '2019-05-31T12:00:00.000000000', '2019-06-01T12:00:00.000000000',\n '2019-06-02T12:00:00.000000000', '2019-06-03T12:00:00.000000000',\n '2019-06-04T12:00:00.000000000', '2019-06-05T12:00:00.000000000',\n '2019-06-06T12:00:00.000000000', '2019-06-07T12:00:00.000000000',\n '2019-06-08T12:00:00.000000000', '2019-06-09T12:00:00.000000000',\n '2019-06-10T12:00:00.000000000', '2019-06-11T12:00:00.000000000',\n '2019-06-12T12:00:00.000000000', '2019-06-13T12:00:00.000000000',\n '2019-06-14T12:00:00.000000000', '2019-06-15T12:00:00.000000000',\n '2019-06-16T12:00:00.000000000', '2019-07-26T12:00:00.000000000',\n '2019-07-27T12:00:00.000000000', '2019-07-28T12:00:00.000000000',\n '2019-07-29T12:00:00.000000000', '2019-07-30T12:00:00.000000000',\n '2019-07-31T12:00:00.000000000', '2019-08-01T12:00:00.000000000',\n '2019-08-02T12:00:00.000000000', '2019-08-03T12:00:00.000000000',\n '2019-08-04T12:00:00.000000000', '2019-08-05T12:00:00.000000000',\n '2019-08-06T12:00:00.000000000', '2019-08-07T12:00:00.000000000',\n '2019-08-08T12:00:00.000000000', '2019-08-09T12:00:00.000000000',\n '2019-08-10T12:00:00.000000000', '2019-08-11T12:00:00.000000000',\n '2019-08-12T12:00:00.000000000', '2019-08-13T12:00:00.000000000',\n '2019-08-14T12:00:00.000000000', '2019-08-15T12:00:00.000000000',\n '2019-08-16T12:00:00.000000000', '2019-08-17T12:00:00.000000000',\n '2019-08-18T12:00:00.000000000', '2019-08-19T12:00:00.000000000',\n '2019-08-20T12:00:00.000000000', '2019-08-21T12:00:00.000000000',\n '2019-08-22T12:00:00.000000000', '2019-08-23T12:00:00.000000000',\n '2019-08-24T12:00:00.000000000', '2019-08-25T12:00:00.000000000',\n '2019-08-26T12:00:00.000000000', '2019-08-27T12:00:00.000000000',\n '2019-08-28T12:00:00.000000000', '2019-08-29T12:00:00.000000000',\n '2019-08-30T12:00:00.000000000', '2019-08-31T12:00:00.000000000',\n '2019-09-01T12:00:00.000000000', '2019-09-02T12:00:00.000000000',\n '2019-09-03T12:00:00.000000000', '2019-09-04T12:00:00.000000000',\n '2019-09-05T12:00:00.000000000', '2019-09-06T12:00:00.000000000',\n '2019-09-07T12:00:00.000000000', '2019-09-08T12:00:00.000000000',\n '2019-09-09T12:00:00.000000000', '2019-09-10T12:00:00.000000000',\n '2019-09-11T12:00:00.000000000', '2019-09-12T12:00:00.000000000',\n '2019-09-13T12:00:00.000000000', '2019-09-14T12:00:00.000000000',\n '2019-09-15T12:00:00.000000000', '2019-09-16T12:00:00.000000000',\n '2019-09-17T12:00:00.000000000', '2019-09-18T12:00:00.000000000',\n '2019-09-19T12:00:00.000000000', '2019-09-20T12:00:00.000000000',\n '2019-09-21T12:00:00.000000000', '2019-09-22T12:00:00.000000000',\n '2019-09-23T12:00:00.000000000', '2019-09-24T12:00:00.000000000',\n '2019-09-25T12:00:00.000000000', '2019-09-26T12:00:00.000000000',\n '2019-09-27T12:00:00.000000000', '2019-09-28T12:00:00.000000000',\n '2019-09-29T12:00:00.000000000', '2019-09-30T12:00:00.000000000',\n '2019-10-01T12:00:00.000000000', '2019-10-02T12:00:00.000000000',\n '2019-10-03T12:00:00.000000000', '2019-10-04T12:00:00.000000000'],\n dtype='datetime64[ns]')latitude(latitude)float3260.12 60.38 60.62 ... 74.62 74.88standard_name :latitudeaxis :Ylong_name :center latitude of grid cellunits :degrees_northvalid_min :-90.0valid_max :90.0coverage_content_type :coordinatearray([60.125, 60.375, 60.625, 60.875, 61.125, 61.375, 61.625, 61.875, 62.125,\n 62.375, 62.625, 62.875, 63.125, 63.375, 63.625, 63.875, 64.125, 64.375,\n 64.625, 64.875, 65.125, 65.375, 65.625, 65.875, 66.125, 66.375, 66.625,\n 66.875, 67.125, 67.375, 67.625, 67.875, 68.125, 68.375, 68.625, 68.875,\n 69.125, 69.375, 69.625, 69.875, 70.125, 70.375, 70.625, 70.875, 71.125,\n 71.375, 71.625, 71.875, 72.125, 72.375, 72.625, 72.875, 73.125, 73.375,\n 73.625, 73.875, 74.125, 74.375, 74.625, 74.875], dtype=float32)longitude(longitude)float32-169.9 -169.6 ... -160.4 -160.1array([-169.875, -169.625, -169.375, -169.125, -168.875, -168.625, -168.375,\n -168.125, -167.875, -167.625, -167.375, -167.125, -166.875, -166.625,\n -166.375, -166.125, -165.875, -165.625, -165.375, -165.125, -164.875,\n -164.625, -164.375, -164.125, -163.875, -163.625, -163.375, -163.125,\n -162.875, -162.625, -162.375, -162.125, -161.875, -161.625, -161.375,\n -161.125, -160.875, -160.625, -160.375, -160.125], dtype=float32)Data variables: (19)nobs(time, latitude, longitude)float64dask.array<chunksize=(1, 60, 40), meta=np.ndarray>long_name :Number of observations for L3 average of SSS smoothed to approx 70km resolutionstandard_name :number_of_observationsunits :1valid_min :1valid_max :480coverage_content_type :physicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.23 MiB\n18.75 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nnobs_RF\n\n\n(time, latitude, longitude)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nNumber of observations for L3 average of rain filtered SSS smoothed to approx 70km resolution\n\nstandard_name :\n\nnumber_of_observations\n\nunits :\n\n1\n\nvalid_min :\n\n1\n\nvalid_max :\n\n480\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.23 MiB\n18.75 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nnobs_40km\n\n\n(time, latitude, longitude)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nNumber of observations for L3 average of SSS at 40km resolution\n\nstandard_name :\n\nnumber_of_observations\n\nunits :\n\n1\n\nvalid_min :\n\n1\n\nvalid_max :\n\n480\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n2.23 MiB\n18.75 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nSMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_RF\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nRain filtered SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_unc\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntotal formal uncertainty estimate of SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_RF_unc\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntotal formal uncertainty estimate of rain filtered SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_unc_comp\n\n\n(time, uncertainty_components, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 9, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nformal uncertainty components of SMAP sea surface salinity smoothed to approx 70km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\ncomponents :\n\n1: ancillary wind speed random. 2: NEDT v-pol. 3: NEDT h-pol. 4: ancillary SST. 5: ancillary wind direction. 6: reflected galaxy. 7: land contamination. 8: sea ice contamination. 9: ancillary wind speed systematic.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n10.05 MiB\n84.38 kiB\n\n\nShape\n(122, 9, 60, 40)\n(1, 9, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 122 1 40 60 9\n\n\n\n\n\n\n\n\nsss_smap_40km\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nSMAP sea surface salinity at original 40km resolution\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nphysicalMeasurement\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_40km_unc\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntotal formal uncertainty estimate of SMAP sea surface salinity at original 40km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsss_smap_40km_unc_comp\n\n\n(time, uncertainty_components, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 9, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nformal uncertainty components of SMAP sea surface salinity at original 40km resolution\n\nstandard_name :\n\nsea_surface_salinity standard_error\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nqualityInformation\n\ncomponents :\n\n1: ancillary wind speed random. 2: NEDT v-pol. 3: NEDT h-pol. 4: ancillary SST. 5: ancillary wind direction. 6: reflected galaxy. 7: land contamination. 8: sea ice contamination. 9: ancillary wind speed systematic.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n10.05 MiB\n84.38 kiB\n\n\nShape\n(122, 9, 60, 40)\n(1, 9, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 122 1 40 60 9\n\n\n\n\n\n\n\n\nsss_ref\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nReference sea surface salinity from HYCOM\n\nstandard_name :\n\nsea_surface_salinity\n\nunits :\n\n1e-3\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n45.0\n\ncoverage_content_type :\n\nreferenceInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\ngland\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naverage land fraction weighted by antenna gain\n\nstandard_name :\n\nland_area_fraction\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nfland\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\naverage land fraction within 3dB contour\n\nstandard_name :\n\nland_area_fraction\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\ngice_est\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated sea ice fraction weighted by antenna gain\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n1.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsurtep\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nsea_surface_temperature\n\nlong_name :\n\nAncillary sea surface temperature (from CMC)\n\nunits :\n\nKelvin\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n313.15\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nwinspd\n\n\n(time, latitude, longitude)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nstandard_name :\n\nwind_speed\n\nlong_name :\n\nAncillary sea surface wind speed from CCMP NRT that is used in surface roughness correction\n\nunits :\n\nm s-1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n100.0\n\ncoverage_content_type :\n\nauxiliaryInformation\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n1.12 MiB\n9.38 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nsea_ice_zones\n\n\n(time, latitude, longitude)\n\n\nint8\n\n\ndask.array<chunksize=(1, 60, 40), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsea-ice contamination zones at center day\n\nstandard_name :\n\nquality_flag\n\nunits :\n\n1\n\ncoverage_content_type :\n\nqualityInformation\n\nflag_meaning :\n\n0: open ocean scene. no sea-ice contamination. 1: likely sea-ice contamination in SMAP antenna sidelobes. SSS retrieved. 2: likely sea-ice contamination in SMAP antenna sidelobes. SSS retrieved. 3: likely sea-ice contamination in SMAP antenna mainlobe. SSS retrieved. 4: likely sea-ice contamination in SMAP antenna mainlobe. SSS retrieved. 5: likely sea-ice contamination in SMAP antenna mainlobe. no SSS retrieved. 6: AMSR2 50-km footprint contains land. sea-ice check not reliable. no SSS retrieved if AMSR-2 AS-ECV V8.2 sea-ice flag set. 7: no or invalid AMSR2 observation. sea-ice check not possible. no SSS retrieved if climatological sea-ice flag set.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n285.94 kiB\n2.34 kiB\n\n\nShape\n(122, 60, 40)\n(1, 60, 40)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 40 60 122\n\n\n\n\n\n\n\n\nanc_sea_ice_flag\n\n\n(time, latitude, longitude, iceflag_components)\n\n\nint8\n\n\ndask.array<chunksize=(1, 60, 40, 3), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nancillary sea-ice detection indicator at center day\n\nstandard_name :\n\nquality_flag\n\nunits :\n\n1\n\ncoverage_content_type :\n\nqualityInformation\n\nflag_meaning :\n\ncomponent 1 of anc_sea_ice_flag: climatological sea-ice flag. component 2 of anc_sea_ice_flag: sea-ice flag from AMSR2 RSS AS-ECV V8.2 3-day map. component 3 of anc_sea_ice_flag: sea-ice flag from Meissner and Manaster.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n857.81 kiB\n7.03 kiB\n\n\nShape\n(122, 60, 40, 3)\n(1, 60, 40, 3)\n\n\nDask graph\n122 chunks in 368 graph layers\n\n\nData type\nint8 numpy.ndarray\n\n\n\n\n 122 1 3 40 60\n\n\n\n\n\nIndexes: (3)timePandasIndexPandasIndex(DatetimeIndex(['2019-04-27 12:00:00', '2019-04-28 12:00:00',\n '2019-04-29 12:00:00', '2019-04-30 12:00:00',\n '2019-05-01 12:00:00', '2019-05-02 12:00:00',\n '2019-05-03 12:00:00', '2019-05-04 12:00:00',\n '2019-05-05 12:00:00', '2019-05-06 12:00:00',\n ...\n '2019-09-25 12:00:00', '2019-09-26 12:00:00',\n '2019-09-27 12:00:00', '2019-09-28 12:00:00',\n '2019-09-29 12:00:00', '2019-09-30 12:00:00',\n '2019-10-01 12:00:00', '2019-10-02 12:00:00',\n '2019-10-03 12:00:00', '2019-10-04 12:00:00'],\n dtype='datetime64[ns]', name='time', length=122, freq=None))latitudePandasIndexPandasIndex(Index([60.125, 60.375, 60.625, 60.875, 61.125, 61.375, 61.625, 61.875, 62.125,\n 62.375, 62.625, 62.875, 63.125, 63.375, 63.625, 63.875, 64.125, 64.375,\n 64.625, 64.875, 65.125, 65.375, 65.625, 65.875, 66.125, 66.375, 66.625,\n 66.875, 67.125, 67.375, 67.625, 67.875, 68.125, 68.375, 68.625, 68.875,\n 69.125, 69.375, 69.625, 69.875, 70.125, 70.375, 70.625, 70.875, 71.125,\n 71.375, 71.625, 71.875, 72.125, 72.375, 72.625, 72.875, 73.125, 73.375,\n 73.625, 73.875, 74.125, 74.375, 74.625, 74.875],\n dtype='float32', name='latitude'))longitudePandasIndexPandasIndex(Index([-169.875, -169.625, -169.375, -169.125, -168.875, -168.625, -168.375,\n -168.125, -167.875, -167.625, -167.375, -167.125, -166.875, -166.625,\n -166.375, -166.125, -165.875, -165.625, -165.375, -165.125, -164.875,\n -164.625, -164.375, -164.125, -163.875, -163.625, -163.375, -163.125,\n -162.875, -162.625, -162.375, -162.125, -161.875, -161.625, -161.375,\n -161.125, -160.875, -160.625, -160.375, -160.125],\n dtype='float32', name='longitude'))Attributes: (65)Conventions :CF-1.7, ACDD-1.3title :SMAP ocean surface salinityversion :V5.0 Validated Releasesummary :The dataset contains the Level 3 8-day running averages of the NASA/RSS Version 5.0 SMAP Salinity Retrieval Algorithm. It includes all necessary ancillary data and the results of all intermediate steps. The data are gridded on a regular 0.25 deg Earth grid. For details see the Release Notes at https://www.remss.com/missions/smap/salinity/.acknowledgement :Funded under Subcontract No.1664013 between JPL and RSS: Production System for NASA Ocean Salinity Science Team (OSST).processing_level :L3resolution :Spatial resolution: approx 70kmhistory :created by T. Meissnerdate_created :2022-03-29 T12:02:30-0700date_modified :2022-03-29 T12:02:30-0700date_issued :2022-03-29 T12:02:30-0700date_metadata_modified :2022-03-29 T12:02:30-0700institution :Remote Sensing Systems, Santa Rosa, CA, USAsource :RSS SMAP-SSS v5.0 algorithmplatform :SMAPinstrument :SMAP radiometerproject :Production System for NASA Ocean Salinity Science Team (OSST)keywords :SURFACE SALINITY, SALINITY, SMAP, NASA, RSSkeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :CF Standard Name Table v78license :Nonecreator_name :Thomas Meissner, Remote Sensing Systemscreator_email :meissner@remss.comcreator_url :http://www.remss.com/missions/smappublisher_name :Thomas Meissner, Frank Wentz, Andrew Manaster, Richard Lindsley, Marty Brewer, Michael Densberger, Remote Sensing Systemspublisher_email :meissner@remss.compublisher_url :http://www.remss.com/missions/smapid :10.5067/SMP50-3SPCSnaming_authority :gov.nasa.earthdatadataset_citation_authors :T. Meissner, F. Wentz, A. Manaster, R. Lindsley, M. Brewer, M. Densbergerdataset_citation_year :2022dataset_citation_product :Remote Sensing Systems SMAP Level 3 Sea Surface Salinity Standard Mapped Image 8day runningdataset_citation_version :V5.0 Validated Releasedataset_citation_institution :Remote Sensing Systems, Santa Rosa, CA, USAdataset_citation_url :Available online at www.remss.com/missions/smapnetCDF_version_id :4comment :Major changes in V5.0: 1. sea-ice flag: based on AMSR-2 surface emissivties and discriminant analysis. 2. sea-ice correction included. 3. formal uncertainty estimates added.references :1. V5.0 Release Notes at https://www.remss.com/missions/smap/salinity/ 2. Meissner, T.; Wentz, F.J.; Le Vine, D.M. The Salinity Retrieval Algorithms for the NASA Aquarius Version 5 and SMAP Version 3 Releases. Remote Sens. 2018, 10, 1121. https://doi.org/10.3390/rs10071121 3. Meissner, T.; Manaster, A. SMAP Salinity Retrievals near the Sea-Ice Edge Using Multi-Channel AMSR2 Brightness Temperatures. Remote Sens. 2021, 13, 5120. https://doi.org/10.3390/rs13245120year_of_observation :2019center_day_of_observation :117first_orbit :22566last_orbit :22682time_coverage_start :2019-04-23T12:00:00Ztime_coverage_end :2019-05-01T12:00:00Ztime_coverage_duration :P8Dtime_coverage_resolution :P8Dcdm_data_type :gridgeospatial_bounds :2Dgeospatial_lat_min :-90.0geospatial_lat_max :90.0geospatial_lat_resolution :0.25geospatial_lat_units :degrees_northgeospatial_lon_min :0.0geospatial_lon_max :360.0geospatial_lon_resolution :0.25geospatial_lon_units :degrees_eastgeospatial_bounds_vertical_crs :EPSG:5831geospatial_vertical_min :0geospatial_vertical_max :0Source_of_SMAP_SSS_retrievals :T. Meissner, F. Wentz, A. Manaster, R. Lindsley, M. Brewer, M. Densberger, Remote Sensing Systems SMAP L2C Sea Surface Salinity, Version 5.0 Validated Release, Remote Sensing Systems, Santa Rosa, CA, USA doi: 10.5067/SMP50-2SOCS www.remss.com/missions/smap.Source_of_ancillary_SST :Canada Meteorological Center. 2016.GHRSST Level 4 CMC0.1deg Global Foundation Sea Surface Temperature Analysis (GDS version 2). Ver.3.3.doi: 10.5067/GHCMC-4FM03 http://dx.doi.org/10.5067/GHCMC-4FM03.Source_of_ancillary_CCMP_wind_speed :Mears, C. et al., 2018.Remote Sensing Systems CCMP NRT V2.0 wind speed and direction. Remote Sensing Systems, Santa Rosa, CA.Source_of_ancillary_AMSR2_sea_ice_flag_and_correction :Meissner, T. and A. Manaster, 2021. SMAP Salinity Retrievals near the Sea-Ice Edge Using Multi-Channel AMSR2 Brightness Temperatures. Remote Sens. 2021, 13, 5120. https://doi.org/10.3390/rs13245120.Source_of_ancillary_land_mask :1 km land/water mask from OCEAN DISCIPLINE PROCESSING SYSTEM (ODPS) based on World Vector Shoreline (WVS)database and World Data Bank. courtesy of Fred Patt, Goddard Space Flight Center, frederick.s.patt@nasa.gov.Source_of_ancillary_reference_SSS_from_HYCOM :Hybrid Coordinate Ocean Model, GLBa0.08/expt_90.9, Top layer salinity. Available at www.hycom.org.", "crumbs": [ "Tutorials", "Science Data Stories", @@ -4399,7 +4399,7 @@ "href": "notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html#access-temperature-profiles-from-argovis-api", "title": "PO.DAAC Cookbook", "section": "Access temperature profiles from ArgoVis API", - "text": "Access temperature profiles from ArgoVis API\nArgoVis is an API and visualization service that provides access to Argo float profiles. The endpoint for requesting profile data is given in the cell below:\n\nargo_api_endpoint = 'https://argovis.colorado.edu/selection/profiles/?'\n\nprint(argo_api_endpoint)\n\nhttps://argovis.colorado.edu/selection/profiles/?\n\n\nCreate the AOI polygon in required XY format, make it a string, and collect the dictionary of API parameters:\n\nargo_api_aoi = [[[aoi_minlon, aoi_minlat], \n [aoi_minlon, aoi_maxlat], \n [aoi_maxlon, aoi_maxlat],\n [aoi_maxlon, aoi_minlat],\n [aoi_minlon, aoi_minlat]]]\n\nargo_api_params = {\n 'startDate': start_date.replace(\"-0\",\"-\"), # 1.\n 'endDate': end_date.replace(\"-0\",\"-\"), # 1. No leading zeros in start/end dates\n 'shape': str(argo_api_aoi).replace(\" \",\"\"), # 2. Array of XY vertices for AOI polygon\n #'presRange': \"[0,30]\" # 3. We wont limit by pressure range\n}\n\nargo_api_params\n\n{'startDate': '2019-1-1',\n 'endDate': '2019-1-31',\n 'shape': '[[[-26.0,30.0],[-26.0,40.0],[-12.0,40.0],[-12.0,30.0],[-26.0,30.0]]]'}\n\n\nSubmit the request parameters to the Argovis API. You should receive a JSON response back. Print the number of profiles inside our AOI:\n\nargo_api_response = requests.get(url=argo_api_endpoint, params=argo_api_params)\n\n# Load the response from JSON if the response status is 200:\nif argo_api_response.status_code == 200:\n argo_profiles = argo_api_response.json()\n print(len(argo_profiles))\nelse:\n # Otherwise dump the text for more clues:\n print(argo_api_response.text)\n\n41\n\n\n\nPrepare profile data for further analysis\nConcatenate the list of metadata dictionaries returned for the argos into a table and update a few of its columns with Pythonic types:\n\nargo_df = pd.DataFrame(argo_profiles).sort_values(\"date\")\n\n# Add a column with pandas datetime objects for easier indexing\nargo_df['datetime'] = pd.to_datetime(argo_df['date'])\n# And then replace the original date column with Python dates\nargo_df['date'] = argo_df.datetime.apply(lambda x: x.date).tolist()\n\n# Add two columns of sanitized lats/lons to the data frame\nargo_df['lat'] = argo_df['roundLat'].astype(float).tolist()\nargo_df['lon'] = argo_df['roundLon'].astype(float).tolist()\n\nargo_df.info()\n\n<class 'pandas.core.frame.DataFrame'>\nInt64Index: 41 entries, 40 to 0\nData columns (total 36 columns):\n # Column Non-Null Count Dtype \n--- ------ -------------- ----- \n 0 _id 41 non-null object \n 1 POSITIONING_SYSTEM 41 non-null object \n 2 DATA_CENTRE 41 non-null object \n 3 PI_NAME 41 non-null object \n 4 WMO_INST_TYPE 41 non-null object \n 5 VERTICAL_SAMPLING_SCHEME 41 non-null object \n 6 DATA_MODE 41 non-null object \n 7 PLATFORM_TYPE 41 non-null object \n 8 measurements 41 non-null object \n 9 station_parameters 41 non-null object \n 10 pres_max_for_TEMP 41 non-null float64 \n 11 pres_min_for_TEMP 41 non-null float64 \n 12 pres_max_for_PSAL 41 non-null float64 \n 13 pres_min_for_PSAL 41 non-null float64 \n 14 max_pres 41 non-null float64 \n 15 date 41 non-null object \n 16 date_added 41 non-null object \n 17 date_qc 41 non-null int64 \n 18 lat 41 non-null float64 \n 19 lon 41 non-null float64 \n 20 geoLocation 41 non-null object \n 21 position_qc 41 non-null int64 \n 22 cycle_number 41 non-null int64 \n 23 dac 41 non-null object \n 24 platform_number 41 non-null int64 \n 25 station_parameters_in_nc 41 non-null object \n 26 nc_url 41 non-null object \n 27 DIRECTION 41 non-null object \n 28 BASIN 41 non-null int64 \n 29 core_data_mode 41 non-null object \n 30 roundLat 41 non-null object \n 31 roundLon 41 non-null object \n 32 strLat 41 non-null object \n 33 strLon 41 non-null object \n 34 formatted_station_parameters 41 non-null object \n 35 datetime 41 non-null datetime64[ns, UTC]\ndtypes: datetime64[ns, UTC](1), float64(7), int64(5), object(23)\nmemory usage: 11.9+ KB\n\n\nYou can download profiles in netCDF format from the FTP link stored in the nc_url fields of the response. Here’s the URL for the first of the profiles:\n\nprint(argo_df.iloc[0].nc_url)\n\nftp://ftp.ifremer.fr/ifremer/argo/dac/coriolis/6902663/profiles/R6902663_124.nc\n\n\nDisplay a table summarizing the space/time characteristics of eaach profile:\n\nargo_df[['platform_number', 'cycle_number', 'datetime', 'lon', 'lat']] #, 'measurements']]\n\n\n\n\n\n\n\n\n\nplatform_number\ncycle_number\ndatetime\nlon\nlat\n\n\n\n\n40\n6902663\n124\n2019-01-01 20:14:00+00:00\n-17.383\n35.601\n\n\n39\n6901260\n49\n2019-01-02 05:43:00+00:00\n-12.812\n37.707\n\n\n38\n6901143\n228\n2019-01-02 09:22:20+00:00\n-21.083\n32.254\n\n\n37\n6902664\n124\n2019-01-02 20:28:00+00:00\n-18.411\n34.985\n\n\n36\n3901643\n43\n2019-01-04 06:13:00+00:00\n-22.429\n37.556\n\n\n35\n3901942\n48\n2019-01-05 20:23:30+00:00\n-15.286\n35.316\n\n\n34\n6901262\n22\n2019-01-06 05:42:59.999000+00:00\n-17.967\n34.228\n\n\n33\n3901932\n22\n2019-01-06 05:49:00+00:00\n-19.904\n33.428\n\n\n32\n1901688\n288\n2019-01-07 03:11:53+00:00\n-23.134\n34.258\n\n\n31\n6901260\n50\n2019-01-07 05:26:00+00:00\n-12.887\n37.905\n\n\n30\n1901688\n289\n2019-01-08 03:15:16+00:00\n-23.137\n34.248\n\n\n29\n6902552\n167\n2019-01-08 12:50:00+00:00\n-23.798\n33.144\n\n\n28\n1901688\n290\n2019-01-09 03:19:48+00:00\n-23.148\n34.233\n\n\n27\n1901688\n291\n2019-01-10 03:27:35+00:00\n-23.158\n34.218\n\n\n26\n6901273\n11\n2019-01-10 05:25:00+00:00\n-12.473\n32.219\n\n\n25\n6902663\n125\n2019-01-11 20:15:00+00:00\n-17.071\n35.830\n\n\n24\n6901260\n51\n2019-01-12 05:18:00+00:00\n-12.982\n38.047\n\n\n23\n6901143\n229\n2019-01-12 07:05:12+00:00\n-21.206\n32.474\n\n\n22\n6902664\n125\n2019-01-12 20:16:00+00:00\n-18.198\n35.057\n\n\n21\n3901643\n44\n2019-01-14 05:58:00+00:00\n-22.706\n37.542\n\n\n20\n3901942\n49\n2019-01-15 20:37:30+00:00\n-15.739\n34.976\n\n\n19\n6901262\n23\n2019-01-16 05:39:00+00:00\n-17.725\n34.223\n\n\n18\n6902785\n54\n2019-01-16 05:56:00+00:00\n-25.507\n38.293\n\n\n17\n3901932\n23\n2019-01-16 06:04:00+00:00\n-19.081\n34.101\n\n\n16\n6901260\n52\n2019-01-17 05:28:00+00:00\n-13.092\n38.266\n\n\n15\n6902552\n168\n2019-01-18 13:02:00+00:00\n-23.575\n33.225\n\n\n14\n1901688\n292\n2019-01-19 20:13:54.002000+00:00\n-23.272\n34.136\n\n\n13\n6901273\n12\n2019-01-20 05:31:00+00:00\n-12.447\n32.181\n\n\n12\n6902663\n126\n2019-01-21 20:21:00+00:00\n-16.892\n35.982\n\n\n11\n6901260\n53\n2019-01-22 05:33:00+00:00\n-13.146\n38.378\n\n\n10\n6901143\n230\n2019-01-22 09:01:03+00:00\n-21.136\n32.880\n\n\n9\n6902664\n126\n2019-01-22 20:23:00+00:00\n-18.099\n35.114\n\n\n8\n3901643\n45\n2019-01-24 06:11:00+00:00\n-23.115\n37.358\n\n\n7\n3901942\n50\n2019-01-25 20:21:30+00:00\n-14.963\n35.402\n\n\n6\n6901262\n24\n2019-01-26 05:47:59.999000+00:00\n-17.474\n34.302\n\n\n5\n3901932\n24\n2019-01-26 06:00:00+00:00\n-18.151\n34.375\n\n\n4\n6902785\n55\n2019-01-26 06:10:00+00:00\n-25.212\n38.213\n\n\n3\n6901260\n54\n2019-01-27 05:38:00+00:00\n-13.265\n38.484\n\n\n2\n6902552\n169\n2019-01-28 12:45:00+00:00\n-23.267\n33.294\n\n\n1\n1901688\n293\n2019-01-29 13:03:27.001000+00:00\n-23.403\n34.206\n\n\n0\n6901273\n13\n2019-01-30 05:27:00+00:00\n-12.737\n32.602\n\n\n\n\n\n\n\n\nNow plot argo profile locations on an interactive map.\nThis plot uses folium/leaflet. Hover/click the clusters (which correspond to specific Argo float platforms) to zoom to the groups of individual profiles and display metadata about them:\n\ndef _get_tooltip(profile: dict):\n return \"\"\"<b>Date</b>: {date}<br>\n <b>Profile ID</b>: {_id}<br>\n <b>Platform ID</b>: {platform_number}<br>\n <b>Latitude</b>: {lat}<br>\n <b>Longitude</b>: {lon}<br>\"\"\".format(**profile)\n\n\nm = folium.Map(location=[argo_df['lat'].mean(), argo_df['lon'].mean()], \n tiles=\"Stamen Terrain\",\n zoom_start=5, )\n\n# Loop over list of unique platform_numbers (floats)\nunique_argo_platform_numbers = argo_df.platform_number.unique().tolist()\n\nfor i, platform in enumerate(unique_argo_platform_numbers):\n # Get row(s) for the current platform\n p = argo_df[argo_df['platform_number']==platform]\n # Make an empty marker cluster to add to the map widget\n cluster = MarkerCluster(name=p['platform_number'])\n # Make markers in a loop and add to the cluster:\n for c in p['cycle_number'].tolist():\n # Select the row for the current profile ('cycle')\n profile = p[p['cycle_number']==c].iloc[0]\n # Create a new marker and add it to the cluster\n cluster.add_child(folium.Marker(\n location=[profile['lat'], profile['lon']],\n tooltip=_get_tooltip(profile.to_dict())))\n m.add_child(cluster)\n\ndisplay(m)\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\nReformat profile data into data frames\nThe in situ measurements temperature, pressure, and salinity readings collected during each profile are returned inside the JSON response.\nThe format of the measurements field is perfect for conversion to pandas data frames. Apply pandas.DataFrame over the entire measurements column to make a pandas.Series of data frames, and replace the existing content in the measurements column:\n\nargo_df['measurements'] = argo_df['measurements'].apply(pd.DataFrame).tolist()\n\n# Print statistical summary of the table content:\nargo_df.iloc[0].measurements.describe()\n\n\n\n\n\n\n\n\n\ntemp\npres\npsal\n\n\n\n\ncount\n105.000000\n105.000000\n105.000000\n\n\nmean\n11.579429\n794.390476\n35.832990\n\n\nstd\n4.726514\n655.512828\n0.433002\n\n\nmin\n4.053000\n6.000000\n35.073000\n\n\n25%\n8.096000\n146.000000\n35.597000\n\n\n50%\n10.885000\n713.000000\n35.765000\n\n\n75%\n15.750000\n1363.000000\n36.128000\n\n\nmax\n18.418000\n2010.000000\n36.504000\n\n\n\n\n\n\n\n\nPlot temperature at the minimum pressure for each profile\nThis cell applies a lambda over the measurements column to slice the row corresponding to the minimum pressure bin for each profile and returns the corresponding temperature measurement:\n\ndef _get_prof_temp_at_pres_min(x):\n return x[x['pres']==x['pres'].min()]['temp'].item()\n\n# Apply the fuunction over the column of measurements tables\nargo_df['temp_at_pres_min'] = argo_df['measurements'].apply(_get_prof_temp_at_pres_min).tolist()\n\n# Plot temperature measured nearest to the sea surface for each profile \nargo_df.plot.scatter(x=\"datetime\", y=\"temp_at_pres_min\", figsize=(16, 4))\nplt.title(\"~Daily temperature at minimum pressure across ~40 argo profiles\")\nplt.xlabel(None)\nplt.ylabel(\"Temperature (degrees C)\")\nplt.ylim(15.5, 20.5)\nplt.grid(alpha=0.25)\n\n\n\n\n\n\n\n\n\n\nSelect an Argo of Interest and its platform_number\nSee which floats had the most profiles within our timeframe/area of interest:\n\nargo_df.groupby(\"platform_number\").count()['cycle_number']\n\nplatform_number\n1901688 6\n3901643 3\n3901932 3\n3901942 3\n6901143 3\n6901260 6\n6901262 3\n6901273 3\n6902552 3\n6902663 3\n6902664 3\n6902785 2\nName: cycle_number, dtype: int64\n\n\nChoose a float with six profiles to study further during the remainder of the notebook.\n\ntarget_argo = 6901260\n\n# Select rows (profiles) for the desired platform:\nargo_skinny = argo_df[argo_df.platform_number==target_argo].copy()\n\nargo_skinny.describe()\n\n\n\n\n\n\n\n\n\npres_max_for_TEMP\npres_min_for_TEMP\npres_max_for_PSAL\npres_min_for_PSAL\nmax_pres\ndate_qc\nlat\nlon\nposition_qc\ncycle_number\nplatform_number\nBASIN\ntemp_at_pres_min\n\n\n\n\ncount\n6.000000\n6.0\n6.000000\n6.0\n6.000000\n6.0\n6.000000\n6.000000\n6.0\n6.000000\n6.0\n6.0\n6.000000\n\n\nmean\n1992.666667\n6.0\n1992.666667\n6.0\n1992.666667\n1.0\n38.131167\n-13.030667\n1.0\n51.500000\n6901260.0\n1.0\n16.921000\n\n\nstd\n21.500388\n0.0\n21.500388\n0.0\n21.500388\n0.0\n0.297238\n0.168997\n0.0\n1.870829\n0.0\n0.0\n0.495337\n\n\nmin\n1961.000000\n6.0\n1961.000000\n6.0\n1961.000000\n1.0\n37.707000\n-13.265000\n1.0\n49.000000\n6901260.0\n1.0\n16.153000\n\n\n25%\n1980.500000\n6.0\n1980.500000\n6.0\n1980.500000\n1.0\n37.940500\n-13.132500\n1.0\n50.250000\n6901260.0\n1.0\n16.643250\n\n\n50%\n1994.500000\n6.0\n1994.500000\n6.0\n1994.500000\n1.0\n38.156500\n-13.037000\n1.0\n51.500000\n6901260.0\n1.0\n17.014000\n\n\n75%\n2010.750000\n6.0\n2010.750000\n6.0\n2010.750000\n1.0\n38.350000\n-12.910750\n1.0\n52.750000\n6901260.0\n1.0\n17.263250\n\n\nmax\n2014.000000\n6.0\n2014.000000\n6.0\n2014.000000\n1.0\n38.484000\n-12.812000\n1.0\n54.000000\n6901260.0\n1.0\n17.479000", + "text": "Access temperature profiles from ArgoVis API\nArgoVis is an API and visualization service that provides access to Argo float profiles. The endpoint for requesting profile data is given in the cell below:\n\nargo_api_endpoint = 'https://argovis.colorado.edu/selection/profiles/?'\n\nprint(argo_api_endpoint)\n\nhttps://argovis.colorado.edu/selection/profiles/?\n\n\nCreate the AOI polygon in required XY format, make it a string, and collect the dictionary of API parameters:\n\nargo_api_aoi = [[[aoi_minlon, aoi_minlat], \n [aoi_minlon, aoi_maxlat], \n [aoi_maxlon, aoi_maxlat],\n [aoi_maxlon, aoi_minlat],\n [aoi_minlon, aoi_minlat]]]\n\nargo_api_params = {\n 'startDate': start_date.replace(\"-0\",\"-\"), # 1.\n 'endDate': end_date.replace(\"-0\",\"-\"), # 1. No leading zeros in start/end dates\n 'shape': str(argo_api_aoi).replace(\" \",\"\"), # 2. Array of XY vertices for AOI polygon\n #'presRange': \"[0,30]\" # 3. We wont limit by pressure range\n}\n\nargo_api_params\n\n{'startDate': '2019-1-1',\n 'endDate': '2019-1-31',\n 'shape': '[[[-26.0,30.0],[-26.0,40.0],[-12.0,40.0],[-12.0,30.0],[-26.0,30.0]]]'}\n\n\nSubmit the request parameters to the Argovis API. You should receive a JSON response back. Print the number of profiles inside our AOI:\n\nargo_api_response = requests.get(url=argo_api_endpoint, params=argo_api_params)\n\n# Load the response from JSON if the response status is 200:\nif argo_api_response.status_code == 200:\n argo_profiles = argo_api_response.json()\n print(len(argo_profiles))\nelse:\n # Otherwise dump the text for more clues:\n print(argo_api_response.text)\n\n41\n\n\n\nPrepare profile data for further analysis\nConcatenate the list of metadata dictionaries returned for the argos into a table and update a few of its columns with Pythonic types:\n\nargo_df = pd.DataFrame(argo_profiles).sort_values(\"date\")\n\n# Add a column with pandas datetime objects for easier indexing\nargo_df['datetime'] = pd.to_datetime(argo_df['date'])\n# And then replace the original date column with Python dates\nargo_df['date'] = argo_df.datetime.apply(lambda x: x.date).tolist()\n\n# Add two columns of sanitized lats/lons to the data frame\nargo_df['lat'] = argo_df['roundLat'].astype(float).tolist()\nargo_df['lon'] = argo_df['roundLon'].astype(float).tolist()\n\nargo_df.info()\n\n<class 'pandas.core.frame.DataFrame'>\nInt64Index: 41 entries, 40 to 0\nData columns (total 36 columns):\n # Column Non-Null Count Dtype \n--- ------ -------------- ----- \n 0 _id 41 non-null object \n 1 POSITIONING_SYSTEM 41 non-null object \n 2 DATA_CENTRE 41 non-null object \n 3 PI_NAME 41 non-null object \n 4 WMO_INST_TYPE 41 non-null object \n 5 VERTICAL_SAMPLING_SCHEME 41 non-null object \n 6 DATA_MODE 41 non-null object \n 7 PLATFORM_TYPE 41 non-null object \n 8 measurements 41 non-null object \n 9 station_parameters 41 non-null object \n 10 pres_max_for_TEMP 41 non-null float64 \n 11 pres_min_for_TEMP 41 non-null float64 \n 12 pres_max_for_PSAL 41 non-null float64 \n 13 pres_min_for_PSAL 41 non-null float64 \n 14 max_pres 41 non-null float64 \n 15 date 41 non-null object \n 16 date_added 41 non-null object \n 17 date_qc 41 non-null int64 \n 18 lat 41 non-null float64 \n 19 lon 41 non-null float64 \n 20 geoLocation 41 non-null object \n 21 position_qc 41 non-null int64 \n 22 cycle_number 41 non-null int64 \n 23 dac 41 non-null object \n 24 platform_number 41 non-null int64 \n 25 station_parameters_in_nc 41 non-null object \n 26 nc_url 41 non-null object \n 27 DIRECTION 41 non-null object \n 28 BASIN 41 non-null int64 \n 29 core_data_mode 41 non-null object \n 30 roundLat 41 non-null object \n 31 roundLon 41 non-null object \n 32 strLat 41 non-null object \n 33 strLon 41 non-null object \n 34 formatted_station_parameters 41 non-null object \n 35 datetime 41 non-null datetime64[ns, UTC]\ndtypes: datetime64[ns, UTC](1), float64(7), int64(5), object(23)\nmemory usage: 11.9+ KB\n\n\nYou can download profiles in netCDF format from the FTP link stored in the nc_url fields of the response. Here’s the URL for the first of the profiles:\n\nprint(argo_df.iloc[0].nc_url)\n\nftp://ftp.ifremer.fr/ifremer/argo/dac/coriolis/6902663/profiles/R6902663_124.nc\n\n\nDisplay a table summarizing the space/time characteristics of eaach profile:\n\nargo_df[['platform_number', 'cycle_number', 'datetime', 'lon', 'lat']] #, 'measurements']]\n\n\n\n\n\n\n\n\nplatform_number\ncycle_number\ndatetime\nlon\nlat\n\n\n\n\n40\n6902663\n124\n2019-01-01 20:14:00+00:00\n-17.383\n35.601\n\n\n39\n6901260\n49\n2019-01-02 05:43:00+00:00\n-12.812\n37.707\n\n\n38\n6901143\n228\n2019-01-02 09:22:20+00:00\n-21.083\n32.254\n\n\n37\n6902664\n124\n2019-01-02 20:28:00+00:00\n-18.411\n34.985\n\n\n36\n3901643\n43\n2019-01-04 06:13:00+00:00\n-22.429\n37.556\n\n\n35\n3901942\n48\n2019-01-05 20:23:30+00:00\n-15.286\n35.316\n\n\n34\n6901262\n22\n2019-01-06 05:42:59.999000+00:00\n-17.967\n34.228\n\n\n33\n3901932\n22\n2019-01-06 05:49:00+00:00\n-19.904\n33.428\n\n\n32\n1901688\n288\n2019-01-07 03:11:53+00:00\n-23.134\n34.258\n\n\n31\n6901260\n50\n2019-01-07 05:26:00+00:00\n-12.887\n37.905\n\n\n30\n1901688\n289\n2019-01-08 03:15:16+00:00\n-23.137\n34.248\n\n\n29\n6902552\n167\n2019-01-08 12:50:00+00:00\n-23.798\n33.144\n\n\n28\n1901688\n290\n2019-01-09 03:19:48+00:00\n-23.148\n34.233\n\n\n27\n1901688\n291\n2019-01-10 03:27:35+00:00\n-23.158\n34.218\n\n\n26\n6901273\n11\n2019-01-10 05:25:00+00:00\n-12.473\n32.219\n\n\n25\n6902663\n125\n2019-01-11 20:15:00+00:00\n-17.071\n35.830\n\n\n24\n6901260\n51\n2019-01-12 05:18:00+00:00\n-12.982\n38.047\n\n\n23\n6901143\n229\n2019-01-12 07:05:12+00:00\n-21.206\n32.474\n\n\n22\n6902664\n125\n2019-01-12 20:16:00+00:00\n-18.198\n35.057\n\n\n21\n3901643\n44\n2019-01-14 05:58:00+00:00\n-22.706\n37.542\n\n\n20\n3901942\n49\n2019-01-15 20:37:30+00:00\n-15.739\n34.976\n\n\n19\n6901262\n23\n2019-01-16 05:39:00+00:00\n-17.725\n34.223\n\n\n18\n6902785\n54\n2019-01-16 05:56:00+00:00\n-25.507\n38.293\n\n\n17\n3901932\n23\n2019-01-16 06:04:00+00:00\n-19.081\n34.101\n\n\n16\n6901260\n52\n2019-01-17 05:28:00+00:00\n-13.092\n38.266\n\n\n15\n6902552\n168\n2019-01-18 13:02:00+00:00\n-23.575\n33.225\n\n\n14\n1901688\n292\n2019-01-19 20:13:54.002000+00:00\n-23.272\n34.136\n\n\n13\n6901273\n12\n2019-01-20 05:31:00+00:00\n-12.447\n32.181\n\n\n12\n6902663\n126\n2019-01-21 20:21:00+00:00\n-16.892\n35.982\n\n\n11\n6901260\n53\n2019-01-22 05:33:00+00:00\n-13.146\n38.378\n\n\n10\n6901143\n230\n2019-01-22 09:01:03+00:00\n-21.136\n32.880\n\n\n9\n6902664\n126\n2019-01-22 20:23:00+00:00\n-18.099\n35.114\n\n\n8\n3901643\n45\n2019-01-24 06:11:00+00:00\n-23.115\n37.358\n\n\n7\n3901942\n50\n2019-01-25 20:21:30+00:00\n-14.963\n35.402\n\n\n6\n6901262\n24\n2019-01-26 05:47:59.999000+00:00\n-17.474\n34.302\n\n\n5\n3901932\n24\n2019-01-26 06:00:00+00:00\n-18.151\n34.375\n\n\n4\n6902785\n55\n2019-01-26 06:10:00+00:00\n-25.212\n38.213\n\n\n3\n6901260\n54\n2019-01-27 05:38:00+00:00\n-13.265\n38.484\n\n\n2\n6902552\n169\n2019-01-28 12:45:00+00:00\n-23.267\n33.294\n\n\n1\n1901688\n293\n2019-01-29 13:03:27.001000+00:00\n-23.403\n34.206\n\n\n0\n6901273\n13\n2019-01-30 05:27:00+00:00\n-12.737\n32.602\n\n\n\n\n\n\n\nNow plot argo profile locations on an interactive map.\nThis plot uses folium/leaflet. Hover/click the clusters (which correspond to specific Argo float platforms) to zoom to the groups of individual profiles and display metadata about them:\n\ndef _get_tooltip(profile: dict):\n return \"\"\"<b>Date</b>: {date}<br>\n <b>Profile ID</b>: {_id}<br>\n <b>Platform ID</b>: {platform_number}<br>\n <b>Latitude</b>: {lat}<br>\n <b>Longitude</b>: {lon}<br>\"\"\".format(**profile)\n\n\nm = folium.Map(location=[argo_df['lat'].mean(), argo_df['lon'].mean()], \n tiles=\"Stamen Terrain\",\n zoom_start=5, )\n\n# Loop over list of unique platform_numbers (floats)\nunique_argo_platform_numbers = argo_df.platform_number.unique().tolist()\n\nfor i, platform in enumerate(unique_argo_platform_numbers):\n # Get row(s) for the current platform\n p = argo_df[argo_df['platform_number']==platform]\n # Make an empty marker cluster to add to the map widget\n cluster = MarkerCluster(name=p['platform_number'])\n # Make markers in a loop and add to the cluster:\n for c in p['cycle_number'].tolist():\n # Select the row for the current profile ('cycle')\n profile = p[p['cycle_number']==c].iloc[0]\n # Create a new marker and add it to the cluster\n cluster.add_child(folium.Marker(\n location=[profile['lat'], profile['lon']],\n tooltip=_get_tooltip(profile.to_dict())))\n m.add_child(cluster)\n\ndisplay(m)\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\nReformat profile data into data frames\nThe in situ measurements temperature, pressure, and salinity readings collected during each profile are returned inside the JSON response.\nThe format of the measurements field is perfect for conversion to pandas data frames. Apply pandas.DataFrame over the entire measurements column to make a pandas.Series of data frames, and replace the existing content in the measurements column:\n\nargo_df['measurements'] = argo_df['measurements'].apply(pd.DataFrame).tolist()\n\n# Print statistical summary of the table content:\nargo_df.iloc[0].measurements.describe()\n\n\n\n\n\n\n\n\ntemp\npres\npsal\n\n\n\n\ncount\n105.000000\n105.000000\n105.000000\n\n\nmean\n11.579429\n794.390476\n35.832990\n\n\nstd\n4.726514\n655.512828\n0.433002\n\n\nmin\n4.053000\n6.000000\n35.073000\n\n\n25%\n8.096000\n146.000000\n35.597000\n\n\n50%\n10.885000\n713.000000\n35.765000\n\n\n75%\n15.750000\n1363.000000\n36.128000\n\n\nmax\n18.418000\n2010.000000\n36.504000\n\n\n\n\n\n\n\nPlot temperature at the minimum pressure for each profile\nThis cell applies a lambda over the measurements column to slice the row corresponding to the minimum pressure bin for each profile and returns the corresponding temperature measurement:\n\ndef _get_prof_temp_at_pres_min(x):\n return x[x['pres']==x['pres'].min()]['temp'].item()\n\n# Apply the fuunction over the column of measurements tables\nargo_df['temp_at_pres_min'] = argo_df['measurements'].apply(_get_prof_temp_at_pres_min).tolist()\n\n# Plot temperature measured nearest to the sea surface for each profile \nargo_df.plot.scatter(x=\"datetime\", y=\"temp_at_pres_min\", figsize=(16, 4))\nplt.title(\"~Daily temperature at minimum pressure across ~40 argo profiles\")\nplt.xlabel(None)\nplt.ylabel(\"Temperature (degrees C)\")\nplt.ylim(15.5, 20.5)\nplt.grid(alpha=0.25)\n\n\n\n\n\n\n\n\n\n\nSelect an Argo of Interest and its platform_number\nSee which floats had the most profiles within our timeframe/area of interest:\n\nargo_df.groupby(\"platform_number\").count()['cycle_number']\n\nplatform_number\n1901688 6\n3901643 3\n3901932 3\n3901942 3\n6901143 3\n6901260 6\n6901262 3\n6901273 3\n6902552 3\n6902663 3\n6902664 3\n6902785 2\nName: cycle_number, dtype: int64\n\n\nChoose a float with six profiles to study further during the remainder of the notebook.\n\ntarget_argo = 6901260\n\n# Select rows (profiles) for the desired platform:\nargo_skinny = argo_df[argo_df.platform_number==target_argo].copy()\n\nargo_skinny.describe()\n\n\n\n\n\n\n\n\npres_max_for_TEMP\npres_min_for_TEMP\npres_max_for_PSAL\npres_min_for_PSAL\nmax_pres\ndate_qc\nlat\nlon\nposition_qc\ncycle_number\nplatform_number\nBASIN\ntemp_at_pres_min\n\n\n\n\ncount\n6.000000\n6.0\n6.000000\n6.0\n6.000000\n6.0\n6.000000\n6.000000\n6.0\n6.000000\n6.0\n6.0\n6.000000\n\n\nmean\n1992.666667\n6.0\n1992.666667\n6.0\n1992.666667\n1.0\n38.131167\n-13.030667\n1.0\n51.500000\n6901260.0\n1.0\n16.921000\n\n\nstd\n21.500388\n0.0\n21.500388\n0.0\n21.500388\n0.0\n0.297238\n0.168997\n0.0\n1.870829\n0.0\n0.0\n0.495337\n\n\nmin\n1961.000000\n6.0\n1961.000000\n6.0\n1961.000000\n1.0\n37.707000\n-13.265000\n1.0\n49.000000\n6901260.0\n1.0\n16.153000\n\n\n25%\n1980.500000\n6.0\n1980.500000\n6.0\n1980.500000\n1.0\n37.940500\n-13.132500\n1.0\n50.250000\n6901260.0\n1.0\n16.643250\n\n\n50%\n1994.500000\n6.0\n1994.500000\n6.0\n1994.500000\n1.0\n38.156500\n-13.037000\n1.0\n51.500000\n6901260.0\n1.0\n17.014000\n\n\n75%\n2010.750000\n6.0\n2010.750000\n6.0\n2010.750000\n1.0\n38.350000\n-12.910750\n1.0\n52.750000\n6901260.0\n1.0\n17.263250\n\n\nmax\n2014.000000\n6.0\n2014.000000\n6.0\n2014.000000\n1.0\n38.484000\n-12.812000\n1.0\n54.000000\n6901260.0\n1.0\n17.479000", "crumbs": [ "Tutorials", "Science Data Stories", @@ -4411,7 +4411,7 @@ "href": "notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html#access-sea-surface-temperature-from-modis", "title": "PO.DAAC Cookbook", "section": "Access sea surface temperature from MODIS", - "text": "Access sea surface temperature from MODIS\nThe user guide for MODIS Level 2 Sea Surface Temperature (SST) from GHRSST is available on the PO.DAAC Drive: https://podaac-tools.jpl.nasa.gov/drive/files/OceanTemperature/ghrsst/docs/GDS20r5.pdf\nWe will access L2 SST data for our AOI and time period of interest by submitting two subset requests to the Harmony API.\nRedefine the AOI to the minimum XY bounds of selected profiles\nSimply replace the aoi_* Python variables with min/max of the lat and lon columns in the new argo_skinny data frame:\n\naoi_minlon = argo_skinny.lon.min()\naoi_maxlon = argo_skinny.lon.max()\naoi_minlat = argo_skinny.lat.min()\naoi_maxlat = argo_skinny.lat.max()\n\naoi_minlon, aoi_minlat, aoi_maxlon, aoi_maxlat\n\n(-13.265, 37.707, -12.812, 38.484)\n\n\nSearch the Common Metadata Repository (CMR) for its unique concept-id\nThe API requires a dataset identifier that we must obtain from CMR. In the next cell, submit a request to the CMR API to grab the metadata for to the dataset/collection.\n\nmodis_results = requests.get(\n url='https://cmr.earthdata.nasa.gov/search/collections.umm_json', \n params={'provider': \"POCLOUD\",\n 'ShortName': \"MODIS_A-JPL-L2P-v2019.0\",\n 'token': _token}\n).json()\n\n# Select the first/only record in the JSON response:\nmodis_coll = modis_results['items'][0]\n\n# Select the 'concept-id' from the 'meta' dictionary:\nmodis_ccid = modis_coll['meta']['concept-id']\n\nmodis_ccid\n\n'C1940473819-POCLOUD'\n\n\n\nRequest subsets from the Harmony API\nWe will submit two requests to the Harmony API. The API is under active development, and it’s therefore recommended that you test your input parameters in the Swagger API interface.\nThe next cell joins the base url for the API to the concept-id obtained above. Run the cell and print the complete url to confirm:\n\nharmony_url = \"https://harmony.earthdata.nasa.gov\"\nharmony_url_modis = f\"{harmony_url}/{modis_ccid}/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?\"\n\nprint(harmony_url_modis)\n\nhttps://harmony.earthdata.nasa.gov/C1940473819-POCLOUD/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?\n\n\nMake a dictionary of subset parameters and format the values to meet requirements of the Harmony API. (See the Swagger UI linked above for more information about those requirements.)\nNote how I’ve commented out the time parameter for the second half of January. I requested the first 15 days and then the second 15 days in two requests to get the whole month.\nHere we print the parameters for the first request:\n\nharmony_params_modis1 = {\n 'time': f'(\"{start_date}T00:00:00.000Z\":\"2019-01-15T23:59:59.999Z\")',\n 'lat': f'({aoi_minlat}:{aoi_maxlat})',\n 'lon': f'({aoi_minlon}:{aoi_maxlon})',\n}\n\nharmony_params_modis2 = {\n 'time': f'(\"2019-01-16T00:00:00.000Z\":\"{end_date}T23:59:59.999Z\")',\n 'lat': f'({aoi_minlat}:{aoi_maxlat})',\n 'lon': f'({aoi_minlon}:{aoi_maxlon})',\n}\n\nharmony_params_modis1\n\n{'time': '(\"2019-01-01T00:00:00.000Z\":\"2019-01-15T23:59:59.999Z\")',\n 'lat': '(37.707:38.484)',\n 'lon': '(-13.265:-12.812)'}\n\n\nComplete the url by formatting the query portion using the parameters dictionary:\n\nrequest_url_modis1 = harmony_url_modis+\"subset=time{time}&subset=lat{lat}&subset=lon{lon}\".format(**harmony_params_modis1)\nrequest_url_modis2 = harmony_url_modis+\"subset=time{time}&subset=lat{lat}&subset=lon{lon}\".format(**harmony_params_modis2)\n\nprint(request_url_modis1)\n\nhttps://harmony.earthdata.nasa.gov/C1940473819-POCLOUD/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?subset=time(\"2019-01-01T00:00:00.000Z\":\"2019-01-15T23:59:59.999Z\")&subset=lat(37.707:38.484)&subset=lon(-13.265:-12.812)\n\n\n\n\nSubmit the request parameters to the Harmony API endpoint\nI’ve already submitted the two requests required to obtain full coverage for our region and timeframe of interest (the two urls in the job_status list below). To submit a new request, or to submit these two MODIS requests again, comment out the two items in the list like this:\njob_status = [\n #'https://...'\n #'https://...\n]\nIt should trigger new requests in the subsequent cells.\n\njob_status = [ \n# \"https://harmony.earthdata.nasa.gov/jobs/512ca343-3bfe-48c5-a480-9281b7348761\", # First time slice\n# \"https://harmony.earthdata.nasa.gov/jobs/5b29414d-3856-4e94-9568-01b32b02a951\", # Second time slice\n]\n\nThe next cell should download a JSON for your new request or from the first request that I submitted while I developed this notebook.\nPrint the message field of the JSON response:\n\nrequest_urls_for_modis = [request_url_modis1, request_url_modis2]\n\nif len(job_status)==0:\n # Loop over the list of request urls:\n for r in request_urls_for_modis:\n # Submit the request and decode the response from json string to dict:\n response_modis = requests.get(r)\n # If the response came back with something other than '2xx', raise an error:\n if not response_modis.status_code // 100 == 2: \n raise Exception(response_modis.text)\n else:\n response_data = response_modis.json()\n # Append the status endpoint to the list of 'job_status' urls:\n job_status.append(response_data['links'][0]['href'])\nelse:\n response_data = requests.get(job_status[0]).json()\n\nresponse_data['message']\n\n'The job is being processed'\n\n\nSuccessful requests to the API will respond with a JSON that starts like this:\n{\n \"username\": \"jmcnelis\",\n \"status\": \"running\",\n \"message\": \"The job is being processed\",\n \"progress\": 0,\n \"createdAt\": \"2021-02-25T02:09:35.972Z\",\n \"updatedAt\": \"2021-02-25T02:09:35.972Z\",\n ...\nThe example above is truncated to the first several lines for the sake of space.\nMonitor the status of an in-progress job\nSelect the status URL(s) from the list(s) of links:\n\nif len(job_status)==0:\n try:\n job_status = [l['href'] for l in response_data['links'] if l['title']==\"Job Status\"]\n except (KeyError, IndexError) as e:\n raise e\n\nprint(job_status)\n\n['https://harmony.earthdata.nasa.gov/jobs/558426d1-3df4-4cc2-80dc-943d03ac5810', 'https://harmony.earthdata.nasa.gov/jobs/dafd8c06-89b5-4dd6-af1d-cacb12512101']\n\n\nRun the next cell to monitor the status of as many requests as you need.\nIt will loop over the job_status list and wait for all the requests to finish processing. (It terminates when the status field of the JSON response does not contain the string \"running\".)\n\nwait = 10 # The number of seconds to wait between each status check\ncompleted = {} # A dict of JSON responses for completed jobs\n\n# Loop repeatedly to check job status. Wait before retrying.\nwhile True:\n for j in job_status: # Iterate over list of job urls\n if j in completed: # Skip if completed.\n continue\n # Get the current job's status as a JSON object.\n job_data = requests.get(j).json()\n if job_data['status']!='running':\n completed[j] = job_data # Add to 'completed' if finished\n # Break loop if 'completed' dictionary contains all jobs.\n if len(completed)==2:\n break\n # If still processing, print a status update and wait ten seconds.\n print(f\"# Job(s) in progress ({len(completed)+1}/{len(job_status)})\")\n time.sleep(wait)\n \nprint(f\"\\n{'&'*40}\\n%\\t\\tDONE!\\n{'&'*40}\\n\")\n\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (2/2)\n\n&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&\n% DONE!\n&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&\n\n\n\nThe final response(s) are massive whenever your subset results in a large number of output granules. Print everything but the links here:\n\nprint(json.dumps({k:v for k, v in job_data.items() if k!=\"links\"}, indent=2))\n\n{\n \"username\": \"jmcnelis\",\n \"status\": \"successful\",\n \"message\": \"The job has completed successfully\",\n \"progress\": 100,\n \"createdAt\": \"2021-03-15T21:08:45.844Z\",\n \"updatedAt\": \"2021-03-15T21:10:51.310Z\",\n \"request\": \"https://harmony.earthdata.nasa.gov/C1940473819-POCLOUD/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?subset=time(%222019-01-16T00%3A00%3A00.000Z%22%3A%222019-01-31T23%3A59%3A59.999Z%22)&subset=lat(37.707%3A38.484)&subset=lon(-13.265%3A-12.812)\",\n \"numInputGranules\": 55,\n \"jobID\": \"dafd8c06-89b5-4dd6-af1d-cacb12512101\"\n}\n\n\nNow look at the first url that points to a subset file (skip the first two because they point to other stuff about the order):\n\nprint(json.dumps(job_data['links'][2], indent=2))\n\n{\n \"href\": \"https://harmony.earthdata.nasa.gov/service-results/harmony-prod-staging/public/podaac/l2-subsetter/80c8503e-c958-4825-b072-ccdee3f7863b/20190116023001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4\",\n \"title\": \"20190116023001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4\",\n \"type\": \"application/x-netcdf4\",\n \"rel\": \"data\",\n \"bbox\": [\n -13.3,\n 37.7,\n -12.8,\n 38.5\n ],\n \"temporal\": {\n \"start\": \"2019-01-16T02:30:01.000Z\",\n \"end\": \"2019-01-16T02:34:59.000Z\"\n }\n}\n\n\nThis cell collects all the output links (Python dicts) from our requests in a list and prints the total number of outputs:\n\njob_links = []\n\nfor j in list(completed.values()):\n for l in j['links']:\n if l['href'].endswith(\"subsetted.nc4\"):\n job_links.append(l)\n\nprint(len(job_links))\n\n74\n\n\n\nPrepare subset data for further analysis\nGet the subset metadata as pandas.DataFrame. We can use apply logic to calculate stats over the time series in subsequent steps. Print the number of rows to confirm. (Should match above)\n\nsubsets_df = pd.DataFrame(data=[{**l, **l['temporal']} for l in job_links])\n\nprint(subsets_df.index.size)\n\n74\n\n\nSelect day/drop night observations\nAdd a day/night flag column to the table. Apply a function over the href column to check the source filename for a string indicating day/night for the swath:\n\nsubsets_df['daytime'] = subsets_df['href'].apply(lambda x: 'MODIS_A-N' not in x)\n\nsubsets_df.info()\n\n<class 'pandas.core.frame.DataFrame'>\nRangeIndex: 74 entries, 0 to 73\nData columns (total 9 columns):\n # Column Non-Null Count Dtype \n--- ------ -------------- ----- \n 0 href 74 non-null object\n 1 title 74 non-null object\n 2 type 74 non-null object\n 3 rel 74 non-null object\n 4 bbox 74 non-null object\n 5 temporal 74 non-null object\n 6 start 74 non-null object\n 7 end 74 non-null object\n 8 daytime 74 non-null bool \ndtypes: bool(1), object(8)\nmemory usage: 4.8+ KB\n\n\nAnd finally, reformat the start timestamps as a new column containing pandas datetime objects instead of strings. Then, add one more column containing a date object (rather than the full datetime timestamp) which we’ll use to aggregate the data before plotting.\n\n# Add new 'datetime' column so that we aren't working with strings:\nsubsets_df['datetime'] = pd.to_datetime(subsets_df['start'])\n\n# Add new 'date' column for aggregation during the final steps of the workflow:\nsubsets_df['date'] = subsets_df.datetime.apply(lambda x: x.date()).tolist()\n\nsubsets_df.date.iloc[0]\n\ndatetime.date(2019, 1, 1)\n\n\n\n\n\nAccessing outputs from your subset request\nNow we will download all the netCDF subsets to the local workspace. (I’m inside AWS as I develop this ipynb.) Set a target directory and create it if needed:\n\ntarget_dir = f\"resources/data/\"\n\n!mkdir -p $target_dir\n\nThis function should handle downloads reliably–test by downloading the first netCDF subset from our table (subsets_df):\n\ndef download_target_file(url: str, force: bool=False):\n # Determine the target path for the download\n target_file = join(target_dir, basename(url))\n if isfile(target_file) and force is False:\n print(f\"# File already exists. Skipping...\\n({basename(url)})\\n\")\n return\n print(f\"# File downloading...\\n({basename(url)})\\n\")\n # Open a remote connection for download stream/write to disk:\n with requests.get(url) as r:\n # Raise exception if response has status other than '2xx':\n if not r.status_code // 100 == 2: \n raise Exception(r.text)\n else:\n # Otherwise write the file to disk:\n with open(target_file, 'wb') as f:\n for chunk in r.iter_content(chunk_size=1024):\n if chunk:\n f.write(chunk)\n \n\n# Test the download function by passing the URL for the first subset in the `subsets` table:\ndownload_target_file(url=subsets_df['href'].iloc[0])\n\n# Join the string path to the target file that should have just downloaded.\ntest_nc4 = join(target_dir, basename(subsets_df['href'].iloc[0]))\n\nprint(\"The first file downloaded successfully:\", isfile(test_nc4))\n\n# File already exists. Skipping...\n(20190101031001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\nThe first file downloaded successfully: True\n\n\nMake sure you can dump the header of that file with ncdump. (The output below is truncated.)\n\n!ncdump -h $test_nc4 | head -20\n\nnetcdf \\20190101031001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted {\ndimensions:\n nj = 92 ;\n ni = 42 ;\n time = 1 ;\nvariables:\n float lat(nj, ni) ;\n lat:_FillValue = -999.f ;\n lat:long_name = \"latitude\" ;\n lat:standard_name = \"latitude\" ;\n lat:units = \"degrees_north\" ;\n lat:valid_min = -90.f ;\n lat:valid_max = 90.f ;\n lat:comment = \"geographical coordinates, WGS84 projection\" ;\n lat:coverage_content_type = \"coordinate\" ;\n float lon(nj, ni) ;\n lon:_FillValue = -999.f ;\n lon:long_name = \"longitude\" ;\n lon:standard_name = \"longitude\" ;\n lon:units = \"degrees_east\" ;\n\n\nNetCDF file format errors indicate that the download was not successful. cat the file for more clues. Read and plot the sea_surface_temperature variable:\n\nwith xr.open_dataset(test_nc4) as ds:\n ds.sea_surface_temperature[0].plot()\n\n\n\n\n\n\n\n\n\nDownload all the netCDF subsets\nGet the links in the href column in a loop:\n\nfor u in subsets_df['href'].tolist():\n download_target_file(u)\n\n# File already exists. Skipping...\n(20190101031001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190101141501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190102021501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190102132001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190103030000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190103140501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104020501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104034001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104034501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104131001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104144501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190105025001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190105135000-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190106033000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190106143501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190107023501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190107134001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190108032000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190108142000-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190109022501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190109132501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190110030501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190110141001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190111021000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190111131500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190111145500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190112025501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190112140001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113020001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113033501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113130500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113144001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190114024000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190114134500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190115032501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190115143001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190116023001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190116133500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190117031000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190117141501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190118021501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190118132001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190119030001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190119140500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120020501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120034000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120034501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120131001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120144501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190121025001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190121135001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190122033000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190122143500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190123023501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190123134001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190124032001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190124142001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190125022500-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190125132500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190126030501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190126141001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190127021001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190127131500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190127145500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190128025500-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190128140001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129020001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129033501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129130501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129144001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190130024001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190130134500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190131032501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190131143001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n\n\nThe next cell adds a column of absolute paths to the netCDF files to the data frame subsets_df:\n\nsubsets_df['path'] = subsets_df['href'].apply(lambda x: abspath(join(target_dir, basename(x))))\n\nisfile(subsets_df['path'].iloc[0])\n\nTrue\n\n\n\n\nLimit to daytime MODIS observations\nSelect just the daytime observations into a new data frame. (Remember we added a daytime column during a previous step.)\n\nsubsets_day = subsets_df[subsets_df.daytime==True].copy()\n\nprint(subsets_day.index.size, \"of\", subsets_df.index.size, \"MODIS acquisitions were collected during daytime\")\n\n37 of 74 MODIS acquisitions were collected during daytime\n\n\n\n\nData quality\nThe quality_level variable describes the observation quality for each pixel in the L2 swaths. Values are assigned between 1 and 6 corresponding to these quality levels:\n\nno_data\nbad_data\nworst_quality\nlow_quality\nacceptable_quality\nbest_quality\n\nThe next cell plots the masked SST grid for the first daytime observations:\n\nwith xr.open_dataset(subsets_day.iloc[0].path) as ds:\n\n # Create a mask for pixels that are \n quality_mask = ds.quality_level[0]==5\n\n # Fill pixels where ###### with np.nan:\n masked_ds = ds.where(quality_mask)\n\n # Plot the resulting array of sea surface temperature:\n masked_ds.sea_surface_temperature[0].plot()\n\n\n\n\n\n\n\n\n\n\n\nPlot time series from multiple data sources\nRoll the logic above into a few map-able functions that group the SST data by day to produce (up to) one daily mean.\n\nApply filter and mean in two functions\nget_user_stat reads the input netCDF and applies some user-specified function to the dataset to render the desired output, then closes the file.\nThe second function _masked_mean filters and calculates the XY mean of the sea_surface_temperature variable. (You could replace this function with your own to do something different.)\n\nTest the combined routine against the first file in the daytime MODIS table:\n\nsubsets_day['path'].iloc[0]\n\n'/Users/jmcnelis/tmp/appscitmp/tutorials/notebooks/SWOT-EA-2021/resources/data/20190101141501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4'\n\n\n\nimport warnings\n\ndef get_user_stat(netcdf, function):\n with xr.open_dataset(netcdf) as ds: \n output = function(ds)\n return output\n\n\ndef _masked_mean(ds):\n '''Produce any output stat/object you want in this function'''\n # Create a mask for pixels that are \n quality_mask = ds.quality_level[0]>=5\n # Fill pixels with np.nan where quality_level is less than 4:\n masked_ds = ds.where(quality_mask)\n # Ignore warnings about calculating mean over an empty array:\n with warnings.catch_warnings():\n warnings.simplefilter(\"ignore\", category=RuntimeWarning)\n # Calculate mean over the XY dimensions (nj, ni in this case)\n value = masked_ds['sea_surface_temperature'].mean(['nj', 'ni']).data.item()\n #value = np.nanmean(masked_sst)\n return value\n\nval = get_user_stat(subsets_day['path'].iloc[0], function=_masked_mean)\n\nval-273.15 # subtract 273.15 to convert Kelvin to Celsius\n\n16.743005371093773\n\n\nThat should give a reasonable value in degrees Celsius.\n\nGet means for the filtered MODIS SST time series in a new column\nApply the _masked_mean function over the column of subsets (i.e. netCDF4 files) to get the time series in a new column sst_mean:\n\nsubsets_day['sst_mean'] = subsets_day['path'].apply(get_user_stat, args=(_masked_mean,))-273.15\n\nsubsets_day['sst_mean'].describe()\n\ncount 15.000000\nmean 16.404915\nstd 0.566561\nmin 15.284357\n25% 15.921838\n50% 16.546533\n75% 16.833688\nmax 17.222162\nName: sst_mean, dtype: float64\n\n\nWe may need to group by the date:\n\nsubsets_day_means = subsets_day.groupby(\"date\", as_index=False).mean()\n\nsubsets_day_means.describe()\n\n\n\n\n\n\n\n\n\nsst_mean\n\n\n\n\ncount\n15.000000\n\n\nmean\n16.404915\n\n\nstd\n0.566561\n\n\nmin\n15.284357\n\n\n25%\n15.921838\n\n\n50%\n16.546533\n\n\n75%\n16.833688\n\n\nmax\n17.222162\n\n\n\n\n\n\n\n\nNow plot the two time series along the same date axis for visual comparison:\n\nfig, ax = plt.subplots(figsize=(16, 4))\n\n# Plot mean sea surface temperature from MODIS SST from GHRSST\nsubsets_day_means.plot.scatter(\n x=\"date\",\n y=\"sst_mean\", \n label=\"SST observed by MODIS\",\n s=100,\n ax=ax\n)\n\n# Plot mean sea surface temperature from the Argo floats\nargo_skinny.plot.scatter(\n x=\"date\",\n y=\"temp_at_pres_min\",\n s=100,\n color=\"orange\",\n marker=\"v\",\n label=\"SST measured by Argo floats\",\n ax=ax\n)\n\n# Matplotlib aesthetic treatments starting from here -->\nax.set_ylabel(\"Temperature (deg C)\")\nax.set_ylim(15.0, 18.0)\nax.grid(alpha=0.25)\n\n\n\n\n\n\n\n\n\n\n\nMUR Level 4 SST from AWS Open Registry\nTry plotting the summarized time series for the two datasets against MUR L4 SST from AWS Open Registry: https://registry.opendata.aws/mur/\n\nimport fsspec\nimport xarray as xr\nfrom dask.distributed import Client\n\n# Reference the MUR L4 SST data on the AWS Open Registry\nurl = 's3://mur-sst/zarr'\n\n# Open the remote dataset from its S3 endpoint (pre-consolidated)\nds = xr.open_zarr(fsspec.get_mapper(url, anon=True), consolidated=True)\n\n# Slice the dataset along its X, Y, and T dimensions:\nmur_L4_subset = ds['analysed_sst'].sel(\n time=slice('2019-01-01','2019-01-31'),\n lat=slice(aoi_minlat, aoi_maxlat), \n lon=slice(aoi_minlon, aoi_maxlon),\n).persist()\n\n# Aggregate the spatial dimensions to compute the one-dimensional time series of means:\nmur_L4_subset_means = mur_L4_subset.groupby(\"time\").mean([\"lon\", \"lat\"])-273.15\n\nprint(mur_L4_subset_means)\n\n<xarray.DataArray 'analysed_sst' (time: 31)>\ndask.array<sub, shape=(31,), dtype=float32, chunksize=(1,), chunktype=numpy.ndarray>\nCoordinates:\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-01-31T09:00:00\n\n\nAdd the MUR time series to the subsets table so that they share the same time axis with the L2 time series:\n\nsubsets_day_means['L4_MUR_SST'] = mur_L4_subset_means.compute().data\n\nPlot the result alongside our data processed throughout the notebook:\n\nfig, ax = plt.subplots(figsize=(16, 5))\n\n# Plot the L4 SST from MUR (hosted by AWS Open Registry)\nsubsets_day_means.plot.line(\n x=\"date\",\n y=\"L4_MUR_SST\",\n color=\"red\",\n label=\"L4 MUR SST (AWS Open Registry)\",\n ax=ax,\n)\n\n# Plot the L2 SST from GHRSST (subset through Harmony API)\nsubsets_day_means.plot.scatter(\n x=\"date\",\n y=\"sst_mean\", \n label=\"L2 MODIS SST (EOSDIS Cloud)\",\n s=100,\n ax=ax\n)\n\n# Plot the in situ temps measured at the surface during Argo profiles (accessed from ArgoVis)\nargo_skinny.plot.scatter(\n x=\"date\",\n y=\"temp_at_pres_min\",\n s=100,\n color=\"orange\",\n marker=\"v\",\n label=\"In situ measurements (ArgoVis API)\",\n ax=ax\n)\n\n# Matplotlib aesthetic treatments starting from here -->\nplt.xticks(rotation=15)\nax.set_xlabel(None)\nax.set_xlim(subsets_day_means.date.iloc[0], subsets_day_means.date.iloc[-1])\nax.set_ylabel(\"Temperature (deg C)\")\nax.set_ylim(15.0, 18.0)\nax.grid(alpha=0.25)\nax.set_title(\"Daily SST from L2 MODIS, L4 MUR, and in situ measurements (January 2019)\")\n\nText(0.5, 1.0, 'Daily SST from L2 MODIS, L4 MUR, and in situ measurements (January 2019)')", + "text": "Access sea surface temperature from MODIS\nThe user guide for MODIS Level 2 Sea Surface Temperature (SST) from GHRSST is available on the PO.DAAC Drive: https://podaac-tools.jpl.nasa.gov/drive/files/OceanTemperature/ghrsst/docs/GDS20r5.pdf\nWe will access L2 SST data for our AOI and time period of interest by submitting two subset requests to the Harmony API.\nRedefine the AOI to the minimum XY bounds of selected profiles\nSimply replace the aoi_* Python variables with min/max of the lat and lon columns in the new argo_skinny data frame:\n\naoi_minlon = argo_skinny.lon.min()\naoi_maxlon = argo_skinny.lon.max()\naoi_minlat = argo_skinny.lat.min()\naoi_maxlat = argo_skinny.lat.max()\n\naoi_minlon, aoi_minlat, aoi_maxlon, aoi_maxlat\n\n(-13.265, 37.707, -12.812, 38.484)\n\n\nSearch the Common Metadata Repository (CMR) for its unique concept-id\nThe API requires a dataset identifier that we must obtain from CMR. In the next cell, submit a request to the CMR API to grab the metadata for to the dataset/collection.\n\nmodis_results = requests.get(\n url='https://cmr.earthdata.nasa.gov/search/collections.umm_json', \n params={'provider': \"POCLOUD\",\n 'ShortName': \"MODIS_A-JPL-L2P-v2019.0\",\n 'token': _token}\n).json()\n\n# Select the first/only record in the JSON response:\nmodis_coll = modis_results['items'][0]\n\n# Select the 'concept-id' from the 'meta' dictionary:\nmodis_ccid = modis_coll['meta']['concept-id']\n\nmodis_ccid\n\n'C1940473819-POCLOUD'\n\n\n\nRequest subsets from the Harmony API\nWe will submit two requests to the Harmony API. The API is under active development, and it’s therefore recommended that you test your input parameters in the Swagger API interface.\nThe next cell joins the base url for the API to the concept-id obtained above. Run the cell and print the complete url to confirm:\n\nharmony_url = \"https://harmony.earthdata.nasa.gov\"\nharmony_url_modis = f\"{harmony_url}/{modis_ccid}/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?\"\n\nprint(harmony_url_modis)\n\nhttps://harmony.earthdata.nasa.gov/C1940473819-POCLOUD/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?\n\n\nMake a dictionary of subset parameters and format the values to meet requirements of the Harmony API. (See the Swagger UI linked above for more information about those requirements.)\nNote how I’ve commented out the time parameter for the second half of January. I requested the first 15 days and then the second 15 days in two requests to get the whole month.\nHere we print the parameters for the first request:\n\nharmony_params_modis1 = {\n 'time': f'(\"{start_date}T00:00:00.000Z\":\"2019-01-15T23:59:59.999Z\")',\n 'lat': f'({aoi_minlat}:{aoi_maxlat})',\n 'lon': f'({aoi_minlon}:{aoi_maxlon})',\n}\n\nharmony_params_modis2 = {\n 'time': f'(\"2019-01-16T00:00:00.000Z\":\"{end_date}T23:59:59.999Z\")',\n 'lat': f'({aoi_minlat}:{aoi_maxlat})',\n 'lon': f'({aoi_minlon}:{aoi_maxlon})',\n}\n\nharmony_params_modis1\n\n{'time': '(\"2019-01-01T00:00:00.000Z\":\"2019-01-15T23:59:59.999Z\")',\n 'lat': '(37.707:38.484)',\n 'lon': '(-13.265:-12.812)'}\n\n\nComplete the url by formatting the query portion using the parameters dictionary:\n\nrequest_url_modis1 = harmony_url_modis+\"subset=time{time}&subset=lat{lat}&subset=lon{lon}\".format(**harmony_params_modis1)\nrequest_url_modis2 = harmony_url_modis+\"subset=time{time}&subset=lat{lat}&subset=lon{lon}\".format(**harmony_params_modis2)\n\nprint(request_url_modis1)\n\nhttps://harmony.earthdata.nasa.gov/C1940473819-POCLOUD/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?subset=time(\"2019-01-01T00:00:00.000Z\":\"2019-01-15T23:59:59.999Z\")&subset=lat(37.707:38.484)&subset=lon(-13.265:-12.812)\n\n\n\n\nSubmit the request parameters to the Harmony API endpoint\nI’ve already submitted the two requests required to obtain full coverage for our region and timeframe of interest (the two urls in the job_status list below). To submit a new request, or to submit these two MODIS requests again, comment out the two items in the list like this:\njob_status = [\n #'https://...'\n #'https://...\n]\nIt should trigger new requests in the subsequent cells.\n\njob_status = [ \n# \"https://harmony.earthdata.nasa.gov/jobs/512ca343-3bfe-48c5-a480-9281b7348761\", # First time slice\n# \"https://harmony.earthdata.nasa.gov/jobs/5b29414d-3856-4e94-9568-01b32b02a951\", # Second time slice\n]\n\nThe next cell should download a JSON for your new request or from the first request that I submitted while I developed this notebook.\nPrint the message field of the JSON response:\n\nrequest_urls_for_modis = [request_url_modis1, request_url_modis2]\n\nif len(job_status)==0:\n # Loop over the list of request urls:\n for r in request_urls_for_modis:\n # Submit the request and decode the response from json string to dict:\n response_modis = requests.get(r)\n # If the response came back with something other than '2xx', raise an error:\n if not response_modis.status_code // 100 == 2: \n raise Exception(response_modis.text)\n else:\n response_data = response_modis.json()\n # Append the status endpoint to the list of 'job_status' urls:\n job_status.append(response_data['links'][0]['href'])\nelse:\n response_data = requests.get(job_status[0]).json()\n\nresponse_data['message']\n\n'The job is being processed'\n\n\nSuccessful requests to the API will respond with a JSON that starts like this:\n{\n \"username\": \"jmcnelis\",\n \"status\": \"running\",\n \"message\": \"The job is being processed\",\n \"progress\": 0,\n \"createdAt\": \"2021-02-25T02:09:35.972Z\",\n \"updatedAt\": \"2021-02-25T02:09:35.972Z\",\n ...\nThe example above is truncated to the first several lines for the sake of space.\nMonitor the status of an in-progress job\nSelect the status URL(s) from the list(s) of links:\n\nif len(job_status)==0:\n try:\n job_status = [l['href'] for l in response_data['links'] if l['title']==\"Job Status\"]\n except (KeyError, IndexError) as e:\n raise e\n\nprint(job_status)\n\n['https://harmony.earthdata.nasa.gov/jobs/558426d1-3df4-4cc2-80dc-943d03ac5810', 'https://harmony.earthdata.nasa.gov/jobs/dafd8c06-89b5-4dd6-af1d-cacb12512101']\n\n\nRun the next cell to monitor the status of as many requests as you need.\nIt will loop over the job_status list and wait for all the requests to finish processing. (It terminates when the status field of the JSON response does not contain the string \"running\".)\n\nwait = 10 # The number of seconds to wait between each status check\ncompleted = {} # A dict of JSON responses for completed jobs\n\n# Loop repeatedly to check job status. Wait before retrying.\nwhile True:\n for j in job_status: # Iterate over list of job urls\n if j in completed: # Skip if completed.\n continue\n # Get the current job's status as a JSON object.\n job_data = requests.get(j).json()\n if job_data['status']!='running':\n completed[j] = job_data # Add to 'completed' if finished\n # Break loop if 'completed' dictionary contains all jobs.\n if len(completed)==2:\n break\n # If still processing, print a status update and wait ten seconds.\n print(f\"# Job(s) in progress ({len(completed)+1}/{len(job_status)})\")\n time.sleep(wait)\n \nprint(f\"\\n{'&'*40}\\n%\\t\\tDONE!\\n{'&'*40}\\n\")\n\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (1/2)\n# Job(s) in progress (2/2)\n\n&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&\n% DONE!\n&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&\n\n\n\nThe final response(s) are massive whenever your subset results in a large number of output granules. Print everything but the links here:\n\nprint(json.dumps({k:v for k, v in job_data.items() if k!=\"links\"}, indent=2))\n\n{\n \"username\": \"jmcnelis\",\n \"status\": \"successful\",\n \"message\": \"The job has completed successfully\",\n \"progress\": 100,\n \"createdAt\": \"2021-03-15T21:08:45.844Z\",\n \"updatedAt\": \"2021-03-15T21:10:51.310Z\",\n \"request\": \"https://harmony.earthdata.nasa.gov/C1940473819-POCLOUD/ogc-api-coverages/1.0.0/collections/all/coverage/rangeset?subset=time(%222019-01-16T00%3A00%3A00.000Z%22%3A%222019-01-31T23%3A59%3A59.999Z%22)&subset=lat(37.707%3A38.484)&subset=lon(-13.265%3A-12.812)\",\n \"numInputGranules\": 55,\n \"jobID\": \"dafd8c06-89b5-4dd6-af1d-cacb12512101\"\n}\n\n\nNow look at the first url that points to a subset file (skip the first two because they point to other stuff about the order):\n\nprint(json.dumps(job_data['links'][2], indent=2))\n\n{\n \"href\": \"https://harmony.earthdata.nasa.gov/service-results/harmony-prod-staging/public/podaac/l2-subsetter/80c8503e-c958-4825-b072-ccdee3f7863b/20190116023001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4\",\n \"title\": \"20190116023001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4\",\n \"type\": \"application/x-netcdf4\",\n \"rel\": \"data\",\n \"bbox\": [\n -13.3,\n 37.7,\n -12.8,\n 38.5\n ],\n \"temporal\": {\n \"start\": \"2019-01-16T02:30:01.000Z\",\n \"end\": \"2019-01-16T02:34:59.000Z\"\n }\n}\n\n\nThis cell collects all the output links (Python dicts) from our requests in a list and prints the total number of outputs:\n\njob_links = []\n\nfor j in list(completed.values()):\n for l in j['links']:\n if l['href'].endswith(\"subsetted.nc4\"):\n job_links.append(l)\n\nprint(len(job_links))\n\n74\n\n\n\nPrepare subset data for further analysis\nGet the subset metadata as pandas.DataFrame. We can use apply logic to calculate stats over the time series in subsequent steps. Print the number of rows to confirm. (Should match above)\n\nsubsets_df = pd.DataFrame(data=[{**l, **l['temporal']} for l in job_links])\n\nprint(subsets_df.index.size)\n\n74\n\n\nSelect day/drop night observations\nAdd a day/night flag column to the table. Apply a function over the href column to check the source filename for a string indicating day/night for the swath:\n\nsubsets_df['daytime'] = subsets_df['href'].apply(lambda x: 'MODIS_A-N' not in x)\n\nsubsets_df.info()\n\n<class 'pandas.core.frame.DataFrame'>\nRangeIndex: 74 entries, 0 to 73\nData columns (total 9 columns):\n # Column Non-Null Count Dtype \n--- ------ -------------- ----- \n 0 href 74 non-null object\n 1 title 74 non-null object\n 2 type 74 non-null object\n 3 rel 74 non-null object\n 4 bbox 74 non-null object\n 5 temporal 74 non-null object\n 6 start 74 non-null object\n 7 end 74 non-null object\n 8 daytime 74 non-null bool \ndtypes: bool(1), object(8)\nmemory usage: 4.8+ KB\n\n\nAnd finally, reformat the start timestamps as a new column containing pandas datetime objects instead of strings. Then, add one more column containing a date object (rather than the full datetime timestamp) which we’ll use to aggregate the data before plotting.\n\n# Add new 'datetime' column so that we aren't working with strings:\nsubsets_df['datetime'] = pd.to_datetime(subsets_df['start'])\n\n# Add new 'date' column for aggregation during the final steps of the workflow:\nsubsets_df['date'] = subsets_df.datetime.apply(lambda x: x.date()).tolist()\n\nsubsets_df.date.iloc[0]\n\ndatetime.date(2019, 1, 1)\n\n\n\n\n\nAccessing outputs from your subset request\nNow we will download all the netCDF subsets to the local workspace. (I’m inside AWS as I develop this ipynb.) Set a target directory and create it if needed:\n\ntarget_dir = f\"resources/data/\"\n\n!mkdir -p $target_dir\n\nThis function should handle downloads reliably–test by downloading the first netCDF subset from our table (subsets_df):\n\ndef download_target_file(url: str, force: bool=False):\n # Determine the target path for the download\n target_file = join(target_dir, basename(url))\n if isfile(target_file) and force is False:\n print(f\"# File already exists. Skipping...\\n({basename(url)})\\n\")\n return\n print(f\"# File downloading...\\n({basename(url)})\\n\")\n # Open a remote connection for download stream/write to disk:\n with requests.get(url) as r:\n # Raise exception if response has status other than '2xx':\n if not r.status_code // 100 == 2: \n raise Exception(r.text)\n else:\n # Otherwise write the file to disk:\n with open(target_file, 'wb') as f:\n for chunk in r.iter_content(chunk_size=1024):\n if chunk:\n f.write(chunk)\n \n\n# Test the download function by passing the URL for the first subset in the `subsets` table:\ndownload_target_file(url=subsets_df['href'].iloc[0])\n\n# Join the string path to the target file that should have just downloaded.\ntest_nc4 = join(target_dir, basename(subsets_df['href'].iloc[0]))\n\nprint(\"The first file downloaded successfully:\", isfile(test_nc4))\n\n# File already exists. Skipping...\n(20190101031001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\nThe first file downloaded successfully: True\n\n\nMake sure you can dump the header of that file with ncdump. (The output below is truncated.)\n\n!ncdump -h $test_nc4 | head -20\n\nnetcdf \\20190101031001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted {\ndimensions:\n nj = 92 ;\n ni = 42 ;\n time = 1 ;\nvariables:\n float lat(nj, ni) ;\n lat:_FillValue = -999.f ;\n lat:long_name = \"latitude\" ;\n lat:standard_name = \"latitude\" ;\n lat:units = \"degrees_north\" ;\n lat:valid_min = -90.f ;\n lat:valid_max = 90.f ;\n lat:comment = \"geographical coordinates, WGS84 projection\" ;\n lat:coverage_content_type = \"coordinate\" ;\n float lon(nj, ni) ;\n lon:_FillValue = -999.f ;\n lon:long_name = \"longitude\" ;\n lon:standard_name = \"longitude\" ;\n lon:units = \"degrees_east\" ;\n\n\nNetCDF file format errors indicate that the download was not successful. cat the file for more clues. Read and plot the sea_surface_temperature variable:\n\nwith xr.open_dataset(test_nc4) as ds:\n ds.sea_surface_temperature[0].plot()\n\n\n\n\n\n\n\n\n\nDownload all the netCDF subsets\nGet the links in the href column in a loop:\n\nfor u in subsets_df['href'].tolist():\n download_target_file(u)\n\n# File already exists. Skipping...\n(20190101031001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190101141501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190102021501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190102132001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190103030000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190103140501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104020501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104034001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104034501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104131001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190104144501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190105025001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190105135000-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190106033000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190106143501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190107023501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190107134001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190108032000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190108142000-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190109022501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190109132501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190110030501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190110141001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190111021000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190111131500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190111145500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190112025501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190112140001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113020001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113033501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113130500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190113144001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190114024000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190114134500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190115032501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190115143001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190116023001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190116133500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190117031000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190117141501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190118021501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190118132001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190119030001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190119140500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120020501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120034000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120034501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120131001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190120144501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190121025001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190121135001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190122033000-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190122143500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190123023501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190123134001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190124032001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190124142001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190125022500-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190125132500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190126030501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190126141001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190127021001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190127131500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190127145500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190128025500-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190128140001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129020001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129033501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129130501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190129144001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190130024001-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190130134500-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190131032501-JPL-L2P_GHRSST-SSTskin-MODIS_A-N-v02.0-fv01.0_subsetted.nc4)\n\n# File already exists. Skipping...\n(20190131143001-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4)\n\n\n\nThe next cell adds a column of absolute paths to the netCDF files to the data frame subsets_df:\n\nsubsets_df['path'] = subsets_df['href'].apply(lambda x: abspath(join(target_dir, basename(x))))\n\nisfile(subsets_df['path'].iloc[0])\n\nTrue\n\n\n\n\nLimit to daytime MODIS observations\nSelect just the daytime observations into a new data frame. (Remember we added a daytime column during a previous step.)\n\nsubsets_day = subsets_df[subsets_df.daytime==True].copy()\n\nprint(subsets_day.index.size, \"of\", subsets_df.index.size, \"MODIS acquisitions were collected during daytime\")\n\n37 of 74 MODIS acquisitions were collected during daytime\n\n\n\n\nData quality\nThe quality_level variable describes the observation quality for each pixel in the L2 swaths. Values are assigned between 1 and 6 corresponding to these quality levels:\n\nno_data\nbad_data\nworst_quality\nlow_quality\nacceptable_quality\nbest_quality\n\nThe next cell plots the masked SST grid for the first daytime observations:\n\nwith xr.open_dataset(subsets_day.iloc[0].path) as ds:\n\n # Create a mask for pixels that are \n quality_mask = ds.quality_level[0]==5\n\n # Fill pixels where ###### with np.nan:\n masked_ds = ds.where(quality_mask)\n\n # Plot the resulting array of sea surface temperature:\n masked_ds.sea_surface_temperature[0].plot()\n\n\n\n\n\n\n\n\n\n\n\nPlot time series from multiple data sources\nRoll the logic above into a few map-able functions that group the SST data by day to produce (up to) one daily mean.\n\nApply filter and mean in two functions\nget_user_stat reads the input netCDF and applies some user-specified function to the dataset to render the desired output, then closes the file.\nThe second function _masked_mean filters and calculates the XY mean of the sea_surface_temperature variable. (You could replace this function with your own to do something different.)\n\nTest the combined routine against the first file in the daytime MODIS table:\n\nsubsets_day['path'].iloc[0]\n\n'/Users/jmcnelis/tmp/appscitmp/tutorials/notebooks/SWOT-EA-2021/resources/data/20190101141501-JPL-L2P_GHRSST-SSTskin-MODIS_A-D-v02.0-fv01.0_subsetted.nc4'\n\n\n\nimport warnings\n\ndef get_user_stat(netcdf, function):\n with xr.open_dataset(netcdf) as ds: \n output = function(ds)\n return output\n\n\ndef _masked_mean(ds):\n '''Produce any output stat/object you want in this function'''\n # Create a mask for pixels that are \n quality_mask = ds.quality_level[0]>=5\n # Fill pixels with np.nan where quality_level is less than 4:\n masked_ds = ds.where(quality_mask)\n # Ignore warnings about calculating mean over an empty array:\n with warnings.catch_warnings():\n warnings.simplefilter(\"ignore\", category=RuntimeWarning)\n # Calculate mean over the XY dimensions (nj, ni in this case)\n value = masked_ds['sea_surface_temperature'].mean(['nj', 'ni']).data.item()\n #value = np.nanmean(masked_sst)\n return value\n\nval = get_user_stat(subsets_day['path'].iloc[0], function=_masked_mean)\n\nval-273.15 # subtract 273.15 to convert Kelvin to Celsius\n\n16.743005371093773\n\n\nThat should give a reasonable value in degrees Celsius.\n\nGet means for the filtered MODIS SST time series in a new column\nApply the _masked_mean function over the column of subsets (i.e. netCDF4 files) to get the time series in a new column sst_mean:\n\nsubsets_day['sst_mean'] = subsets_day['path'].apply(get_user_stat, args=(_masked_mean,))-273.15\n\nsubsets_day['sst_mean'].describe()\n\ncount 15.000000\nmean 16.404915\nstd 0.566561\nmin 15.284357\n25% 15.921838\n50% 16.546533\n75% 16.833688\nmax 17.222162\nName: sst_mean, dtype: float64\n\n\nWe may need to group by the date:\n\nsubsets_day_means = subsets_day.groupby(\"date\", as_index=False).mean()\n\nsubsets_day_means.describe()\n\n\n\n\n\n\n\n\nsst_mean\n\n\n\n\ncount\n15.000000\n\n\nmean\n16.404915\n\n\nstd\n0.566561\n\n\nmin\n15.284357\n\n\n25%\n15.921838\n\n\n50%\n16.546533\n\n\n75%\n16.833688\n\n\nmax\n17.222162\n\n\n\n\n\n\n\nNow plot the two time series along the same date axis for visual comparison:\n\nfig, ax = plt.subplots(figsize=(16, 4))\n\n# Plot mean sea surface temperature from MODIS SST from GHRSST\nsubsets_day_means.plot.scatter(\n x=\"date\",\n y=\"sst_mean\", \n label=\"SST observed by MODIS\",\n s=100,\n ax=ax\n)\n\n# Plot mean sea surface temperature from the Argo floats\nargo_skinny.plot.scatter(\n x=\"date\",\n y=\"temp_at_pres_min\",\n s=100,\n color=\"orange\",\n marker=\"v\",\n label=\"SST measured by Argo floats\",\n ax=ax\n)\n\n# Matplotlib aesthetic treatments starting from here -->\nax.set_ylabel(\"Temperature (deg C)\")\nax.set_ylim(15.0, 18.0)\nax.grid(alpha=0.25)\n\n\n\n\n\n\n\n\n\n\n\nMUR Level 4 SST from AWS Open Registry\nTry plotting the summarized time series for the two datasets against MUR L4 SST from AWS Open Registry: https://registry.opendata.aws/mur/\n\nimport fsspec\nimport xarray as xr\nfrom dask.distributed import Client\n\n# Reference the MUR L4 SST data on the AWS Open Registry\nurl = 's3://mur-sst/zarr'\n\n# Open the remote dataset from its S3 endpoint (pre-consolidated)\nds = xr.open_zarr(fsspec.get_mapper(url, anon=True), consolidated=True)\n\n# Slice the dataset along its X, Y, and T dimensions:\nmur_L4_subset = ds['analysed_sst'].sel(\n time=slice('2019-01-01','2019-01-31'),\n lat=slice(aoi_minlat, aoi_maxlat), \n lon=slice(aoi_minlon, aoi_maxlon),\n).persist()\n\n# Aggregate the spatial dimensions to compute the one-dimensional time series of means:\nmur_L4_subset_means = mur_L4_subset.groupby(\"time\").mean([\"lon\", \"lat\"])-273.15\n\nprint(mur_L4_subset_means)\n\n<xarray.DataArray 'analysed_sst' (time: 31)>\ndask.array<sub, shape=(31,), dtype=float32, chunksize=(1,), chunktype=numpy.ndarray>\nCoordinates:\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-01-31T09:00:00\n\n\nAdd the MUR time series to the subsets table so that they share the same time axis with the L2 time series:\n\nsubsets_day_means['L4_MUR_SST'] = mur_L4_subset_means.compute().data\n\nPlot the result alongside our data processed throughout the notebook:\n\nfig, ax = plt.subplots(figsize=(16, 5))\n\n# Plot the L4 SST from MUR (hosted by AWS Open Registry)\nsubsets_day_means.plot.line(\n x=\"date\",\n y=\"L4_MUR_SST\",\n color=\"red\",\n label=\"L4 MUR SST (AWS Open Registry)\",\n ax=ax,\n)\n\n# Plot the L2 SST from GHRSST (subset through Harmony API)\nsubsets_day_means.plot.scatter(\n x=\"date\",\n y=\"sst_mean\", \n label=\"L2 MODIS SST (EOSDIS Cloud)\",\n s=100,\n ax=ax\n)\n\n# Plot the in situ temps measured at the surface during Argo profiles (accessed from ArgoVis)\nargo_skinny.plot.scatter(\n x=\"date\",\n y=\"temp_at_pres_min\",\n s=100,\n color=\"orange\",\n marker=\"v\",\n label=\"In situ measurements (ArgoVis API)\",\n ax=ax\n)\n\n# Matplotlib aesthetic treatments starting from here -->\nplt.xticks(rotation=15)\nax.set_xlabel(None)\nax.set_xlim(subsets_day_means.date.iloc[0], subsets_day_means.date.iloc[-1])\nax.set_ylabel(\"Temperature (deg C)\")\nax.set_ylim(15.0, 18.0)\nax.grid(alpha=0.25)\nax.set_title(\"Daily SST from L2 MODIS, L4 MUR, and in situ measurements (January 2019)\")\n\nText(0.5, 1.0, 'Daily SST from L2 MODIS, L4 MUR, and in situ measurements (January 2019)')", "crumbs": [ "Tutorials", "Science Data Stories", @@ -4548,7 +4548,7 @@ "href": "notebooks/opendap/MUR-OPeNDAP.html", "title": "OPeNDAP Access", "section": "", - "text": "From the PO.DAAC Cookbook, to access the GitHub version of the notebook, follow this link.\n\n\nOPeNDAP Access\n\nNotebook Objectives:\n\nSearch the common metadata repository (CMR) for the MUR dataset\nObtain OPeNDAP links from CMR search\nDownload data from OPeNDAP links and open via xarray to visualize data\n\n\n#https://ghrc.nsstc.nasa.gov/opendap/globalir/data/2020/0525/globir.20146.0000\nfrom netCDF4 import Dataset\nimport xarray as xr\nimport dask\nimport os\nimport requests\nimport earthaccess\n\n#Allows us to visualize the dask progress for parallel operations\nfrom dask.diagnostics import ProgressBar\nProgressBar().register()\n\n\n\nEarthdata Login\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. If you don’t already have one, please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up. We use earthaccess to authenticate your login credentials below.\n\nauth = earthaccess.login()\n\n\n\nRequest link for OPeNDAP\n\n#CMR Link to use\n#https://cmr.earthdata.nasa.gov/search/granules.umm_json?collection_concept_id=C1625128926-GHRC_CLOUD&temporal=2019-01-01T10:00:00Z,2019-12-31T23:59:59Z\nr = requests.get('https://cmr.earthdata.nasa.gov/search/granules.umm_json?collection_concept_id=C1996881146-POCLOUD&temporal=2019-01-01T10:00:00Z,2019-02-01T00:00:00Z&pageSize=365')\nresponse_body = r.json()\n\n\nod_files = []\nfor itm in response_body['items']:\n for urls in itm['umm']['RelatedUrls']:\n if 'OPeNDAP' in urls['Description']:\n od_files.append(urls['URL'])\n\nod_files\n \n\n['https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190102090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190103090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190104090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190105090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190106090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190107090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190108090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190109090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190110090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190111090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190112090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190113090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190114090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190115090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190116090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190117090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190118090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190119090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190120090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190121090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190122090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190123090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190124090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190125090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190126090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190127090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190128090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190129090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190130090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190131090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190201090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1']\n\n\n\nlen(od_files)\n\n32\n\n\n\nfor f in od_files:\n print (\" opening \" + f)\n data_url = f'{f}.dap.nc4'\n \n \n # The notation below is [start index, step, end index]\n # lat[ /lat= 0..17998] start index. = -90\n # lon[ /lon= 0..35999] start index. = -180\n # time[ /time= 0..0] \n required_variables = {'analysed_sst[0:1:0][000:1:9000][000:1:9000]',\n 'analysis_error[0:1:0][000:1:9000][000:1:9000]',\n 'lat[000:1:9000]',\n 'lon[000:1:9000]',\n 'time[0:1:0]'}\n\n #upper latitude, left longitude, lower latitude, right longitude\n\n basename = os.path.basename(data_url)\n request_params = {'dap4.ce': ';'.join(required_variables)}\n #identity encoding to work around an issue with server side response compression (??)\n response = requests.get(data_url, params=request_params, headers={'Accept-Encoding': 'identity'})\n\n if response.ok:\n with open(basename, 'wb') as file_handler:\n file_handler.write(response.content)\n else:\n print(f'Request failed: {response.text}')\n\n\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190102090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190103090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190104090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190105090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190106090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190107090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190108090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190109090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190110090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190111090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190112090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190113090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190114090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190115090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190116090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190117090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190118090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190119090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190120090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190121090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190122090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190123090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190124090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190125090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190126090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190127090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190128090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190129090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190130090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190131090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190201090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n\n\n\nimport xarray as xr\ncloud_data = xr.open_mfdataset('*.dap.nc4', engine='h5netcdf')\n\n\ncloud_data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 32, lat: 9001, lon: 9001)\nCoordinates:\n * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... -0.01 0.0 0.01\n * lon (lon) float32 -180.0 -180.0 -180.0 ... -90.01 -90.0 -89.99\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-02-01T...\nData variables:\n analysed_sst (time, lat, lon) float32 dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>\n analysis_error (time, lat, lon) float32 dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>\nAttributes: (12/48)\n Conventions: CF-1.5\n title: Daily MUR SST, Final product\n summary: A merged, multi-sensor L4 Foundation SST anal...\n references: http://podaac.jpl.nasa.gov/Multi-scale_Ultra-...\n institution: Jet Propulsion Laboratory\n history: created at nominal 4-day latency; replaced nr...\n ... ...\n publisher_name: GHRSST Project Office\n publisher_url: http://www.ghrsst.org\n publisher_email: ghrsst-po@nceo.ac.uk\n processing_level: L4\n cdm_data_type: grid\n history_json: [{\"$schema\":\"https:\\/\\/harmony.earthdata.nasa...xarray.DatasetDimensions:time: 32lat: 9001lon: 9001Coordinates: (3)lat(lat)float32-89.99 -89.98 -89.97 ... 0.0 0.01long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :noneorigname :latfullnamepath :/latarray([-8.999e+01, -8.998e+01, -8.997e+01, ..., -1.000e-02, 0.000e+00,\n 1.000e-02], dtype=float32)lon(lon)float32-180.0 -180.0 ... -90.0 -89.99long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :noneorigname :lonfullnamepath :/lonarray([-179.99, -179.98, -179.97, ..., -90.01, -90. , -89.99],\n dtype=float32)time(time)datetime64[ns]2019-01-01T09:00:00 ... 2019-02-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsorigname :timefullnamepath :/timearray(['2019-01-01T09:00:00.000000000', '2019-01-02T09:00:00.000000000',\n '2019-01-03T09:00:00.000000000', '2019-01-04T09:00:00.000000000',\n '2019-01-05T09:00:00.000000000', '2019-01-06T09:00:00.000000000',\n '2019-01-07T09:00:00.000000000', '2019-01-08T09:00:00.000000000',\n '2019-01-09T09:00:00.000000000', '2019-01-10T09:00:00.000000000',\n '2019-01-11T09:00:00.000000000', '2019-01-12T09:00:00.000000000',\n '2019-01-13T09:00:00.000000000', '2019-01-14T09:00:00.000000000',\n '2019-01-15T09:00:00.000000000', '2019-01-16T09:00:00.000000000',\n '2019-01-17T09:00:00.000000000', '2019-01-18T09:00:00.000000000',\n '2019-01-19T09:00:00.000000000', '2019-01-20T09:00:00.000000000',\n '2019-01-21T09:00:00.000000000', '2019-01-22T09:00:00.000000000',\n '2019-01-23T09:00:00.000000000', '2019-01-24T09:00:00.000000000',\n '2019-01-25T09:00:00.000000000', '2019-01-26T09:00:00.000000000',\n '2019-01-27T09:00:00.000000000', '2019-01-28T09:00:00.000000000',\n '2019-01-29T09:00:00.000000000', '2019-01-30T09:00:00.000000000',\n '2019-01-31T09:00:00.000000000', '2019-02-01T09:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (2)analysed_sst(time, lat, lon)float32dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\\\"Final\\\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAForigname :analysed_sstfullnamepath :/analysed_sst\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.66 GiB\n4.00 MiB\n\n\nShape\n(32, 9001, 9001)\n(1, 1024, 1024)\n\n\nDask graph\n2592 chunks in 65 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9001 9001 32\n\n\n\n\n\n\n\n\nanalysis_error\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated error standard deviation of analysed_sst\n\nunits :\n\nkelvin\n\nvalid_min :\n\n0\n\nvalid_max :\n\n32767\n\ncomment :\n\nnone\n\norigname :\n\nanalysis_error\n\nfullnamepath :\n\n/analysis_error\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.66 GiB\n4.00 MiB\n\n\nShape\n(32, 9001, 9001)\n(1, 1024, 1024)\n\n\nDask graph\n2592 chunks in 65 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9001 9001 32\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Float64Index([ -89.98999786376953, -89.9800033569336,\n -89.97000122070312, -89.95999908447266,\n -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531,\n -89.91000366210938, -89.9000015258789,\n ...\n -0.07999999821186066, -0.07000000029802322,\n -0.05999999865889549, -0.05000000074505806,\n -0.03999999910593033, -0.029999999329447746,\n -0.019999999552965164, -0.009999999776482582,\n 0.0, 0.009999999776482582],\n dtype='float64', name='lat', length=9001))lonPandasIndexPandasIndex(Float64Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n -90.08000183105469, -90.06999969482422, -90.05999755859375,\n -90.05000305175781, -90.04000091552734, -90.02999877929688,\n -90.0199966430664, -90.01000213623047, -90.0,\n -89.98999786376953],\n dtype='float64', name='lon', length=9001))timePandasIndexPandasIndex(DatetimeIndex(['2019-01-01 09:00:00', '2019-01-02 09:00:00',\n '2019-01-03 09:00:00', '2019-01-04 09:00:00',\n '2019-01-05 09:00:00', '2019-01-06 09:00:00',\n '2019-01-07 09:00:00', '2019-01-08 09:00:00',\n '2019-01-09 09:00:00', '2019-01-10 09:00:00',\n '2019-01-11 09:00:00', '2019-01-12 09:00:00',\n '2019-01-13 09:00:00', '2019-01-14 09:00:00',\n '2019-01-15 09:00:00', '2019-01-16 09:00:00',\n '2019-01-17 09:00:00', '2019-01-18 09:00:00',\n '2019-01-19 09:00:00', '2019-01-20 09:00:00',\n '2019-01-21 09:00:00', '2019-01-22 09:00:00',\n '2019-01-23 09:00:00', '2019-01-24 09:00:00',\n '2019-01-25 09:00:00', '2019-01-26 09:00:00',\n '2019-01-27 09:00:00', '2019-01-28 09:00:00',\n '2019-01-29 09:00:00', '2019-01-30 09:00:00',\n '2019-01-31 09:00:00', '2019-02-01 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))Attributes: (48)Conventions :CF-1.5title :Daily MUR SST, Final productsummary :A merged, multi-sensor L4 Foundation SST analysis product from JPL.references :http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SSTinstitution :Jet Propulsion Laboratoryhistory :created at nominal 4-day latency; replaced nrt (1-day latency) version.\n2024-03-12 23:18:44 GMT hyrax-1.17.0-3 https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.dap.nc4?dap4.ce=analysed_sst%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blon%5B000%3A1%3A9000%5D%3Btime%5B0%3A1%3A0%5D%3Banalysis_error%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blat%5B000%3A1%3A9000%5D\ncomment :MUR = \\\"Multi-scale Ultra-high Reolution\\\"license :These data are available free of charge under data policy of JPL PO.DAAC.id :MUR-JPL-L4-GLOB-v04.1naming_authority :org.ghrsstproduct_version :04.1uuid :27665bc0-d5fc-11e1-9b23-0800200c9a66gds_version_id :2.0netcdf_version_id :4.1date_created :20190110T004403Zstart_time :20190101T090000Zstop_time :20190101T090000Ztime_coverage_start :20181231T210000Ztime_coverage_end :20190101T210000Zfile_quality_level :3source :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAFplatform :Terra, Aqua, GCOM-W, NOAA-19, MetOp-A, Buoys/Shipssensor :MODIS, AMSR2, AVHRR, in-situMetadata_Conventions :Unidata Observation Dataset v1.0metadata_link :http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1keywords :Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsouthernmost_latitude :-90.0northernmost_latitude :90.0westernmost_longitude :-180.0easternmost_longitude :180.0spatial_resolution :0.01 degreesgeospatial_lat_units :degrees northgeospatial_lat_resolution :0.01 degreesgeospatial_lon_units :degrees eastgeospatial_lon_resolution :0.01 degreesacknowledgment :Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.creator_name :JPL MUR SST projectcreator_email :ghrsst@podaac.jpl.nasa.govcreator_url :http://mur.jpl.nasa.govproject :NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Programpublisher_name :GHRSST Project Officepublisher_url :http://www.ghrsst.orgpublisher_email :ghrsst-po@nceo.ac.ukprocessing_level :L4cdm_data_type :gridhistory_json :[{\"$schema\":\"https:\\/\\/harmony.earthdata.nasa.gov\\/schemas\\/history\\/0.1.0\\/history-0.1.0.json\",\"date_time\":\"2024-03-12T23:18:44.042+0000\",\"program\":\"hyrax\",\"version\":\"1.17.0-3\",\"parameters\":[{\"request_url\":\"https:\\/\\/opendap.earthdata.nasa.gov\\/providers\\/POCLOUD\\/collections\\/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)\\/granules\\/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.dap.nc4?dap4.ce=analysed_sst%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blon%5B000%3A1%3A9000%5D%3Btime%5B0%3A1%3A0%5D%3Banalysis_error%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blat%5B000%3A1%3A9000%5D\"},{\"decoded_constraint\":\"dap4.ce=analysed_sst[0:1:0][000:1:9000][000:1:9000];lon[000:1:9000];time[0:1:0];analysis_error[0:1:0][000:1:9000][000:1:9000];lat[000:1:9000]\"}]}]", + "text": "From the PO.DAAC Cookbook, to access the GitHub version of the notebook, follow this link.\n\n\nOPeNDAP Access\n\nNotebook Objectives:\n\nSearch the common metadata repository (CMR) for the MUR dataset\nObtain OPeNDAP links from CMR search\nDownload data from OPeNDAP links and open via xarray to visualize data\n\n\n#https://ghrc.nsstc.nasa.gov/opendap/globalir/data/2020/0525/globir.20146.0000\nfrom netCDF4 import Dataset\nimport xarray as xr\nimport dask\nimport os\nimport requests\nimport earthaccess\n\n#Allows us to visualize the dask progress for parallel operations\nfrom dask.diagnostics import ProgressBar\nProgressBar().register()\n\n\n\nEarthdata Login\nAn Earthdata Login account is required to access data, as well as discover restricted data, from the NASA Earthdata system. Thus, to access NASA data, you need Earthdata Login. If you don’t already have one, please visit https://urs.earthdata.nasa.gov to register and manage your Earthdata Login account. This account is free to create and only takes a moment to set up. We use earthaccess to authenticate your login credentials below.\n\nauth = earthaccess.login()\n\n\n\nRequest link for OPeNDAP\n\n#CMR Link to use\n#https://cmr.earthdata.nasa.gov/search/granules.umm_json?collection_concept_id=C1625128926-GHRC_CLOUD&temporal=2019-01-01T10:00:00Z,2019-12-31T23:59:59Z\nr = requests.get('https://cmr.earthdata.nasa.gov/search/granules.umm_json?collection_concept_id=C1996881146-POCLOUD&temporal=2019-01-01T10:00:00Z,2019-02-01T00:00:00Z&pageSize=365')\nresponse_body = r.json()\n\n\nod_files = []\nfor itm in response_body['items']:\n for urls in itm['umm']['RelatedUrls']:\n if 'OPeNDAP' in urls['Description']:\n od_files.append(urls['URL'])\n\nod_files\n \n\n['https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190102090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190103090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190104090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190105090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190106090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190107090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190108090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190109090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190110090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190111090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190112090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190113090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190114090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190115090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190116090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190117090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190118090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190119090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190120090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190121090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190122090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190123090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190124090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190125090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190126090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190127090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190128090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190129090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190130090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190131090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1',\n 'https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190201090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1']\n\n\n\nlen(od_files)\n\n32\n\n\n\nfor f in od_files:\n print (\" opening \" + f)\n data_url = f'{f}.dap.nc4'\n \n \n # The notation below is [start index, step, end index]\n # lat[ /lat= 0..17998] start index. = -90\n # lon[ /lon= 0..35999] start index. = -180\n # time[ /time= 0..0] \n required_variables = {'analysed_sst[0:1:0][000:1:9000][000:1:9000]',\n 'analysis_error[0:1:0][000:1:9000][000:1:9000]',\n 'lat[000:1:9000]',\n 'lon[000:1:9000]',\n 'time[0:1:0]'}\n\n #upper latitude, left longitude, lower latitude, right longitude\n\n basename = os.path.basename(data_url)\n request_params = {'dap4.ce': ';'.join(required_variables)}\n #identity encoding to work around an issue with server side response compression (??)\n response = requests.get(data_url, params=request_params, headers={'Accept-Encoding': 'identity'})\n\n if response.ok:\n with open(basename, 'wb') as file_handler:\n file_handler.write(response.content)\n else:\n print(f'Request failed: {response.text}')\n\n\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190102090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190103090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190104090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190105090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190106090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190107090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190108090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190109090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190110090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190111090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190112090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190113090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190114090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190115090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190116090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190117090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190118090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190119090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190120090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190121090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190122090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190123090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190124090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190125090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190126090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190127090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190128090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190129090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190130090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190131090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n opening https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190201090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1\n\n\n\nimport xarray as xr\ncloud_data = xr.open_mfdataset('*.dap.nc4', engine='h5netcdf')\n\n\ncloud_data\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (time: 32, lat: 9001, lon: 9001)\nCoordinates:\n * lat (lat) float32 -89.99 -89.98 -89.97 -89.96 ... -0.01 0.0 0.01\n * lon (lon) float32 -180.0 -180.0 -180.0 ... -90.01 -90.0 -89.99\n * time (time) datetime64[ns] 2019-01-01T09:00:00 ... 2019-02-01T...\nData variables:\n analysed_sst (time, lat, lon) float32 dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>\n analysis_error (time, lat, lon) float32 dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>\nAttributes: (12/48)\n Conventions: CF-1.5\n title: Daily MUR SST, Final product\n summary: A merged, multi-sensor L4 Foundation SST anal...\n references: http://podaac.jpl.nasa.gov/Multi-scale_Ultra-...\n institution: Jet Propulsion Laboratory\n history: created at nominal 4-day latency; replaced nr...\n ... ...\n publisher_name: GHRSST Project Office\n publisher_url: http://www.ghrsst.org\n publisher_email: ghrsst-po@nceo.ac.uk\n processing_level: L4\n cdm_data_type: grid\n history_json: [{\"$schema\":\"https:\\/\\/harmony.earthdata.nasa...xarray.DatasetDimensions:time: 32lat: 9001lon: 9001Coordinates: (3)lat(lat)float32-89.99 -89.98 -89.97 ... 0.0 0.01long_name :latitudestandard_name :latitudeaxis :Yunits :degrees_northvalid_min :-90.0valid_max :90.0comment :noneorigname :latfullnamepath :/latarray([-8.999e+01, -8.998e+01, -8.997e+01, ..., -1.000e-02, 0.000e+00,\n 1.000e-02], dtype=float32)lon(lon)float32-180.0 -180.0 ... -90.0 -89.99long_name :longitudestandard_name :longitudeaxis :Xunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :noneorigname :lonfullnamepath :/lonarray([-179.99, -179.98, -179.97, ..., -90.01, -90. , -89.99],\n dtype=float32)time(time)datetime64[ns]2019-01-01T09:00:00 ... 2019-02-...long_name :reference time of sst fieldstandard_name :timeaxis :Tcomment :Nominal time of analyzed fieldsorigname :timefullnamepath :/timearray(['2019-01-01T09:00:00.000000000', '2019-01-02T09:00:00.000000000',\n '2019-01-03T09:00:00.000000000', '2019-01-04T09:00:00.000000000',\n '2019-01-05T09:00:00.000000000', '2019-01-06T09:00:00.000000000',\n '2019-01-07T09:00:00.000000000', '2019-01-08T09:00:00.000000000',\n '2019-01-09T09:00:00.000000000', '2019-01-10T09:00:00.000000000',\n '2019-01-11T09:00:00.000000000', '2019-01-12T09:00:00.000000000',\n '2019-01-13T09:00:00.000000000', '2019-01-14T09:00:00.000000000',\n '2019-01-15T09:00:00.000000000', '2019-01-16T09:00:00.000000000',\n '2019-01-17T09:00:00.000000000', '2019-01-18T09:00:00.000000000',\n '2019-01-19T09:00:00.000000000', '2019-01-20T09:00:00.000000000',\n '2019-01-21T09:00:00.000000000', '2019-01-22T09:00:00.000000000',\n '2019-01-23T09:00:00.000000000', '2019-01-24T09:00:00.000000000',\n '2019-01-25T09:00:00.000000000', '2019-01-26T09:00:00.000000000',\n '2019-01-27T09:00:00.000000000', '2019-01-28T09:00:00.000000000',\n '2019-01-29T09:00:00.000000000', '2019-01-30T09:00:00.000000000',\n '2019-01-31T09:00:00.000000000', '2019-02-01T09:00:00.000000000'],\n dtype='datetime64[ns]')Data variables: (2)analysed_sst(time, lat, lon)float32dask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>long_name :analysed sea surface temperaturestandard_name :sea_surface_foundation_temperatureunits :kelvinvalid_min :-32767valid_max :32767comment :\\\"Final\\\" version using Multi-Resolution Variational Analysis (MRVA) method for interpolationsource :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAForigname :analysed_sstfullnamepath :/analysed_sst\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.66 GiB\n4.00 MiB\n\n\nShape\n(32, 9001, 9001)\n(1, 1024, 1024)\n\n\nDask graph\n2592 chunks in 65 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9001 9001 32\n\n\n\n\n\n\n\n\nanalysis_error\n\n\n(time, lat, lon)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1024, 1024), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nestimated error standard deviation of analysed_sst\n\nunits :\n\nkelvin\n\nvalid_min :\n\n0\n\nvalid_max :\n\n32767\n\ncomment :\n\nnone\n\norigname :\n\nanalysis_error\n\nfullnamepath :\n\n/analysis_error\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.66 GiB\n4.00 MiB\n\n\nShape\n(32, 9001, 9001)\n(1, 1024, 1024)\n\n\nDask graph\n2592 chunks in 65 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 9001 9001 32\n\n\n\n\n\nIndexes: (3)latPandasIndexPandasIndex(Float64Index([ -89.98999786376953, -89.9800033569336,\n -89.97000122070312, -89.95999908447266,\n -89.94999694824219, -89.94000244140625,\n -89.93000030517578, -89.91999816894531,\n -89.91000366210938, -89.9000015258789,\n ...\n -0.07999999821186066, -0.07000000029802322,\n -0.05999999865889549, -0.05000000074505806,\n -0.03999999910593033, -0.029999999329447746,\n -0.019999999552965164, -0.009999999776482582,\n 0.0, 0.009999999776482582],\n dtype='float64', name='lat', length=9001))lonPandasIndexPandasIndex(Float64Index([-179.99000549316406, -179.97999572753906, -179.97000122070312,\n -179.9600067138672, -179.9499969482422, -179.94000244140625,\n -179.92999267578125, -179.9199981689453, -179.91000366210938,\n -179.89999389648438,\n ...\n -90.08000183105469, -90.06999969482422, -90.05999755859375,\n -90.05000305175781, -90.04000091552734, -90.02999877929688,\n -90.0199966430664, -90.01000213623047, -90.0,\n -89.98999786376953],\n dtype='float64', name='lon', length=9001))timePandasIndexPandasIndex(DatetimeIndex(['2019-01-01 09:00:00', '2019-01-02 09:00:00',\n '2019-01-03 09:00:00', '2019-01-04 09:00:00',\n '2019-01-05 09:00:00', '2019-01-06 09:00:00',\n '2019-01-07 09:00:00', '2019-01-08 09:00:00',\n '2019-01-09 09:00:00', '2019-01-10 09:00:00',\n '2019-01-11 09:00:00', '2019-01-12 09:00:00',\n '2019-01-13 09:00:00', '2019-01-14 09:00:00',\n '2019-01-15 09:00:00', '2019-01-16 09:00:00',\n '2019-01-17 09:00:00', '2019-01-18 09:00:00',\n '2019-01-19 09:00:00', '2019-01-20 09:00:00',\n '2019-01-21 09:00:00', '2019-01-22 09:00:00',\n '2019-01-23 09:00:00', '2019-01-24 09:00:00',\n '2019-01-25 09:00:00', '2019-01-26 09:00:00',\n '2019-01-27 09:00:00', '2019-01-28 09:00:00',\n '2019-01-29 09:00:00', '2019-01-30 09:00:00',\n '2019-01-31 09:00:00', '2019-02-01 09:00:00'],\n dtype='datetime64[ns]', name='time', freq=None))Attributes: (48)Conventions :CF-1.5title :Daily MUR SST, Final productsummary :A merged, multi-sensor L4 Foundation SST analysis product from JPL.references :http://podaac.jpl.nasa.gov/Multi-scale_Ultra-high_Resolution_MUR-SSTinstitution :Jet Propulsion Laboratoryhistory :created at nominal 4-day latency; replaced nrt (1-day latency) version.\n2024-03-12 23:18:44 GMT hyrax-1.17.0-3 https://opendap.earthdata.nasa.gov/providers/POCLOUD/collections/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)/granules/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.dap.nc4?dap4.ce=analysed_sst%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blon%5B000%3A1%3A9000%5D%3Btime%5B0%3A1%3A0%5D%3Banalysis_error%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blat%5B000%3A1%3A9000%5D\ncomment :MUR = \\\"Multi-scale Ultra-high Reolution\\\"license :These data are available free of charge under data policy of JPL PO.DAAC.id :MUR-JPL-L4-GLOB-v04.1naming_authority :org.ghrsstproduct_version :04.1uuid :27665bc0-d5fc-11e1-9b23-0800200c9a66gds_version_id :2.0netcdf_version_id :4.1date_created :20190110T004403Zstart_time :20190101T090000Zstop_time :20190101T090000Ztime_coverage_start :20181231T210000Ztime_coverage_end :20190101T210000Zfile_quality_level :3source :MODIS_T-JPL, MODIS_A-JPL, AMSR2-REMSS, AVHRR19_G-NAVO, AVHRRMTA_G-NAVO, iQUAM-NOAA/NESDIS, Ice_Conc-OSISAFplatform :Terra, Aqua, GCOM-W, NOAA-19, MetOp-A, Buoys/Shipssensor :MODIS, AMSR2, AVHRR, in-situMetadata_Conventions :Unidata Observation Dataset v1.0metadata_link :http://podaac.jpl.nasa.gov/ws/metadata/dataset/?format=iso&shortName=MUR-JPL-L4-GLOB-v04.1keywords :Oceans > Ocean Temperature > Sea Surface Temperaturekeywords_vocabulary :NASA Global Change Master Directory (GCMD) Science Keywordsstandard_name_vocabulary :NetCDF Climate and Forecast (CF) Metadata Conventionsouthernmost_latitude :-90.0northernmost_latitude :90.0westernmost_longitude :-180.0easternmost_longitude :180.0spatial_resolution :0.01 degreesgeospatial_lat_units :degrees northgeospatial_lat_resolution :0.01 degreesgeospatial_lon_units :degrees eastgeospatial_lon_resolution :0.01 degreesacknowledgment :Please acknowledge the use of these data with the following statement: These data were provided by JPL under support by NASA MEaSUREs program.creator_name :JPL MUR SST projectcreator_email :ghrsst@podaac.jpl.nasa.govcreator_url :http://mur.jpl.nasa.govproject :NASA Making Earth Science Data Records for Use in Research Environments (MEaSUREs) Programpublisher_name :GHRSST Project Officepublisher_url :http://www.ghrsst.orgpublisher_email :ghrsst-po@nceo.ac.ukprocessing_level :L4cdm_data_type :gridhistory_json :[{\"$schema\":\"https:\\/\\/harmony.earthdata.nasa.gov\\/schemas\\/history\\/0.1.0\\/history-0.1.0.json\",\"date_time\":\"2024-03-12T23:18:44.042+0000\",\"program\":\"hyrax\",\"version\":\"1.17.0-3\",\"parameters\":[{\"request_url\":\"https:\\/\\/opendap.earthdata.nasa.gov\\/providers\\/POCLOUD\\/collections\\/GHRSST%20Level%204%20MUR%20Global%20Foundation%20Sea%20Surface%20Temperature%20Analysis%20(v4.1)\\/granules\\/20190101090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.dap.nc4?dap4.ce=analysed_sst%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blon%5B000%3A1%3A9000%5D%3Btime%5B0%3A1%3A0%5D%3Banalysis_error%5B0%3A1%3A0%5D%5B000%3A1%3A9000%5D%5B000%3A1%3A9000%5D%3Blat%5B000%3A1%3A9000%5D\"},{\"decoded_constraint\":\"dap4.ce=analysed_sst[0:1:0][000:1:9000][000:1:9000];lon[000:1:9000];time[0:1:0];analysis_error[0:1:0][000:1:9000][000:1:9000];lat[000:1:9000]\"}]}]", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4617,7 +4617,7 @@ "href": "notebooks/GIS/SWOT_GISshapefiles.html#authentication-with-earthaccess", "title": "SWOT North American Continent Hydrology Dataset", "section": "Authentication with earthaccess", - "text": "Authentication with earthaccess\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login()\n\n\nSearch using earthaccess for SWOT River Reaches\nEach dataset has it’s own unique collection concept ID. For this dataset it is SWOT_L2_HR_RiverSP_2.0. We don’t need 1000+ files, we just want the river reach files over North America. SWOT files come in “reach” and “node” versions in the same collection, here we want the 10km reaches rather than the nodes. We will also only get files for North America, or ‘NA’ via wildcard search.\n\nresults = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Reach*_NA_*') # here we filter by Reach files (not node), continent code=NA\n\nGranules found: 192\n\n\n\n\nDownload the Data into a folder\n\nearthaccess.download(results, \"../datasets/data_downloads/SWOT_River_Feb2024\")\n\n\n\nUnzip shapefiles to existing folder\n\nfolder = Path(\"../datasets/data_downloads/SWOT_River_Feb2024\")\nfor item in os.listdir(folder): # loop through items in dir\n if item.endswith(\".zip\"): # check for \".zip\" extension\n zip_ref = zipfile.ZipFile(f\"{folder}/{item}\") # create zipfile object\n zip_ref.extractall(folder) # extract file to dir\n zip_ref.close() # close file\n\n\n\nOpening a Single Shapefile\nUsing Geopandas to open & read a single shapefile. (Select desired single pass from list with path to downloaded shapefile)\n\nRiver = gpd.read_file(folder / 'SWOT_L2_HR_RiverSP_Reach_010_380_NA_20240207T132630_20240207T132640_PIC0_01.shp')\nRiver\n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n72302000011\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.945799\n-57.862132\nHumber River\n4.236410e+01\n8.633000e-01\n8.585900e-01\n...\n675.648\n10\n2135.645\n1984.456750\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.87428 48.95038, -57.87387 48.9...\n\n\n1\n72302000021\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.947712\n-57.846809\nHumber River\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n217.623\n4\n3008.992\n873.346819\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.85082 48.94446, -57.85058 48.9...\n\n\n2\n72302000043\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.973874\n-57.788332\nHumber River\n5.920900e+00\n1.440190e+00\n1.437370e+00\n...\n7900.098\n46\n12109.956\n9100.964613\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-57.83865 48.95172, -57.83824 48.9...\n\n\n3\n72302000051\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.995478\n-57.730291\nHumber River\n3.668880e+01\n9.367000e-02\n2.596000e-02\n...\n397.512\n7\n13444.660\n1334.703115\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.73845 48.99230, -57.73804 48.9...\n\n\n4\n72302000063\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.997805\n-57.715888\nHumber River\n2.784380e+01\n9.033000e-02\n7.670000e-03\n...\n1089.674\n6\n14714.137\n1269.477822\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.72209 48.99569, -57.72168 48.9...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n210\n72350800071\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.791094\n-58.985455\nno_data\n9.711690e+01\n3.278100e+00\n3.276860e+00\n...\n821.862\n82\n119786.053\n16448.306136\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.89330 51.77895, -58.89374 51.7...\n\n\n211\n72350800081\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:10Z\n51.886956\n-59.172704\nno_data\n1.168453e+02\n7.567680e+00\n7.567140e+00\n...\n2599.684\n99\n139644.759\n19858.706858\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.07129 51.82866, -59.07148 51.8...\n\n\n212\n72350800091\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n51.966072\n-59.344178\nno_data\n9.837220e+01\n1.775170e+00\n1.772890e+00\n...\n2313.937\n64\n152412.397\n12767.637572\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.37449 52.01016, -59.37465 52.0...\n\n\n213\n72350800101\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n52.045314\n-59.409170\nSaint-Augustin River\n1.425316e+02\n7.325890e+00\n7.325330e+00\n...\n590.479\n68\n166028.213\n13615.816320\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-59.37465 52.00988, -59.37449 52.0...\n\n\n214\n72350800111\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.696292\n-58.702223\nno_data\n1.045083e+02\n1.271013e+01\n1.270981e+01\n...\n1257.012\n97\n79887.666\n19340.975021\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.72011 51.63638, -58.72011 51.6...\n\n\n\n\n215 rows × 127 columns\n\n\n\n\n\n\nPlotting a Shapefile\nUsing Matplotlib to plot the shapefile, then adding a basemap for context using the library Contextily.\nContextily offers a list of basemap providers that can be easily visualized.\nhttps://contextily.readthedocs.io/en/latest/intro_guide.html\n\nfig, ax = plt.subplots(figsize=(25,15))\nRiver.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=River.crs, source=cx.providers.OpenTopoMap)\n\n\n\n\n\n\n\n\n\n\nShapefile Attribute Visualization\nShapefiles have various attributes or variables with each column signifiying individual data values.\nPreviously, we plotted by showcasing the full path of the river reach on the map.\nYou can also plot a shapefile based on a specific variable.\nWithin Matplotlib you can specifiy the column parameter based on the column within the datasets attributes.\nFor the example below, we will look at the column ‘wse’ which stands for water surface elevation.\n\n#First, we set all -999999999999 values to nan so that the color variation shows in the values.\nRiver[\"wse\"] = River.wse.apply(lambda x: x if x > -10 else np.nan)\n\n\nfig, ax = plt.subplots(figsize=(15,15))\nRiver.plot(column='wse', ax=ax, legend=True, cmap='viridis')\n\n\n\n\n\n\n\n\n\n\nQuerying a Shapefile\nIf you want to search for a specific reach id or a specific length of river reach that is possible through a spatial query using Geopandas.\nUtilizing comparison operators (>, <, ==, >=, <=).\n\nQuery = River.query(\"reach_id == '72350800091'\")\nQuery\n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n212\n72350800091\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n51.966072\n-59.344178\nno_data\n98.3722\n1.77517\n1.77289\n...\n2313.937\n64\n152412.397\n12767.637572\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.37449 52.01016, -59.37465 52.0...\n\n\n\n\n1 rows × 127 columns\n\n\n\n\n\nfig, ax = plt.subplots(figsize=(25,15))\nQuery.plot(ax=ax, legend=True)\ncx.add_basemap(ax, crs=River.crs, source=cx.providers.Esri.NatGeoWorldMap)\n\n\n\n\n\n\n\n\n\n\nYou can specify river reaches that have a water surface elevation greater than 35 meters.\n\nWSE = River.query('wse > 35')\nWSE\n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n72302000011\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.945799\n-57.862132\nHumber River\n42.3641\n0.86330\n0.85859\n...\n675.648\n10\n2135.645\n1984.456750\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.87428 48.95038, -57.87387 48.9...\n\n\n3\n72302000051\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.995478\n-57.730291\nHumber River\n36.6888\n0.09367\n0.02596\n...\n397.512\n7\n13444.660\n1334.703115\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.73845 48.99230, -57.73804 48.9...\n\n\n9\n72302000111\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:00Z\n49.170904\n-57.404776\nno_data\n118.9760\n0.83515\n0.83029\n...\n105.642\n28\n50331.655\n5596.729779\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.43636 49.16979, -57.43570 49.1...\n\n\n10\n72302000123\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:00Z\n49.177845\n-57.348725\nno_data\n116.7355\n0.09589\n0.03309\n...\n35547.561\n20\n54269.288\n3937.633107\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-57.37279 49.17719, -57.37255 49.1...\n\n\n11\n72302000131\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n49.171135\n-57.263679\nno_data\n92.1803\n1.43050\n1.42767\n...\n500301.988\n61\n66530.524\n12261.235771\n-1.000000e+12\n0\n4\n1\n0\nLINESTRING (-57.32502 49.17382, -57.32461 49.1...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n210\n72350800071\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.791094\n-58.985455\nno_data\n97.1169\n3.27810\n3.27686\n...\n821.862\n82\n119786.053\n16448.306136\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.89330 51.77895, -58.89374 51.7...\n\n\n211\n72350800081\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:10Z\n51.886956\n-59.172704\nno_data\n116.8453\n7.56768\n7.56714\n...\n2599.684\n99\n139644.759\n19858.706858\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.07129 51.82866, -59.07148 51.8...\n\n\n212\n72350800091\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n51.966072\n-59.344178\nno_data\n98.3722\n1.77517\n1.77289\n...\n2313.937\n64\n152412.397\n12767.637572\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.37449 52.01016, -59.37465 52.0...\n\n\n213\n72350800101\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n52.045314\n-59.409170\nSaint-Augustin River\n142.5316\n7.32589\n7.32533\n...\n590.479\n68\n166028.213\n13615.816320\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-59.37465 52.00988, -59.37449 52.0...\n\n\n214\n72350800111\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.696292\n-58.702223\nno_data\n104.5083\n12.71013\n12.70981\n...\n1257.012\n97\n79887.666\n19340.975021\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.72011 51.63638, -58.72011 51.6...\n\n\n\n\n116 rows × 127 columns\n\n\n\n\n\nfig, ax = plt.subplots(figsize=(25,15))\nWSE.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=River.crs, source=cx.providers.Esri.NatGeoWorldMap)", + "text": "Authentication with earthaccess\nIn this notebook, we will be calling the authentication in the below cell.\n\nauth = earthaccess.login()\n\n\nSearch using earthaccess for SWOT River Reaches\nEach dataset has it’s own unique collection concept ID. For this dataset it is SWOT_L2_HR_RiverSP_2.0. We don’t need 1000+ files, we just want the river reach files over North America. SWOT files come in “reach” and “node” versions in the same collection, here we want the 10km reaches rather than the nodes. We will also only get files for North America, or ‘NA’ via wildcard search.\n\nresults = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n temporal = ('2024-02-01 00:00:00', '2024-02-29 23:59:59'), # can also specify by time\n granule_name = '*Reach*_NA_*') # here we filter by Reach files (not node), continent code=NA\n\nGranules found: 192\n\n\n\n\nDownload the Data into a folder\n\nearthaccess.download(results, \"../datasets/data_downloads/SWOT_River_Feb2024\")\n\n\n\nUnzip shapefiles to existing folder\n\nfolder = Path(\"../datasets/data_downloads/SWOT_River_Feb2024\")\nfor item in os.listdir(folder): # loop through items in dir\n if item.endswith(\".zip\"): # check for \".zip\" extension\n zip_ref = zipfile.ZipFile(f\"{folder}/{item}\") # create zipfile object\n zip_ref.extractall(folder) # extract file to dir\n zip_ref.close() # close file\n\n\n\nOpening a Single Shapefile\nUsing Geopandas to open & read a single shapefile. (Select desired single pass from list with path to downloaded shapefile)\n\nRiver = gpd.read_file(folder / 'SWOT_L2_HR_RiverSP_Reach_010_380_NA_20240207T132630_20240207T132640_PIC0_01.shp')\nRiver\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n72302000011\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.945799\n-57.862132\nHumber River\n4.236410e+01\n8.633000e-01\n8.585900e-01\n...\n675.648\n10\n2135.645\n1984.456750\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.87428 48.95038, -57.87387 48.9...\n\n\n1\n72302000021\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.947712\n-57.846809\nHumber River\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n...\n217.623\n4\n3008.992\n873.346819\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.85082 48.94446, -57.85058 48.9...\n\n\n2\n72302000043\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.973874\n-57.788332\nHumber River\n5.920900e+00\n1.440190e+00\n1.437370e+00\n...\n7900.098\n46\n12109.956\n9100.964613\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-57.83865 48.95172, -57.83824 48.9...\n\n\n3\n72302000051\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.995478\n-57.730291\nHumber River\n3.668880e+01\n9.367000e-02\n2.596000e-02\n...\n397.512\n7\n13444.660\n1334.703115\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.73845 48.99230, -57.73804 48.9...\n\n\n4\n72302000063\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.997805\n-57.715888\nHumber River\n2.784380e+01\n9.033000e-02\n7.670000e-03\n...\n1089.674\n6\n14714.137\n1269.477822\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.72209 48.99569, -57.72168 48.9...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n210\n72350800071\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.791094\n-58.985455\nno_data\n9.711690e+01\n3.278100e+00\n3.276860e+00\n...\n821.862\n82\n119786.053\n16448.306136\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.89330 51.77895, -58.89374 51.7...\n\n\n211\n72350800081\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:10Z\n51.886956\n-59.172704\nno_data\n1.168453e+02\n7.567680e+00\n7.567140e+00\n...\n2599.684\n99\n139644.759\n19858.706858\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.07129 51.82866, -59.07148 51.8...\n\n\n212\n72350800091\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n51.966072\n-59.344178\nno_data\n9.837220e+01\n1.775170e+00\n1.772890e+00\n...\n2313.937\n64\n152412.397\n12767.637572\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.37449 52.01016, -59.37465 52.0...\n\n\n213\n72350800101\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n52.045314\n-59.409170\nSaint-Augustin River\n1.425316e+02\n7.325890e+00\n7.325330e+00\n...\n590.479\n68\n166028.213\n13615.816320\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-59.37465 52.00988, -59.37449 52.0...\n\n\n214\n72350800111\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.696292\n-58.702223\nno_data\n1.045083e+02\n1.271013e+01\n1.270981e+01\n...\n1257.012\n97\n79887.666\n19340.975021\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.72011 51.63638, -58.72011 51.6...\n\n\n\n\n215 rows × 127 columns\n\n\n\n\n\nPlotting a Shapefile\nUsing Matplotlib to plot the shapefile, then adding a basemap for context using the library Contextily.\nContextily offers a list of basemap providers that can be easily visualized.\nhttps://contextily.readthedocs.io/en/latest/intro_guide.html\n\nfig, ax = plt.subplots(figsize=(25,15))\nRiver.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=River.crs, source=cx.providers.OpenTopoMap)\n\n\n\n\n\n\n\n\n\n\nShapefile Attribute Visualization\nShapefiles have various attributes or variables with each column signifiying individual data values.\nPreviously, we plotted by showcasing the full path of the river reach on the map.\nYou can also plot a shapefile based on a specific variable.\nWithin Matplotlib you can specifiy the column parameter based on the column within the datasets attributes.\nFor the example below, we will look at the column ‘wse’ which stands for water surface elevation.\n\n#First, we set all -999999999999 values to nan so that the color variation shows in the values.\nRiver[\"wse\"] = River.wse.apply(lambda x: x if x > -10 else np.nan)\n\n\nfig, ax = plt.subplots(figsize=(15,15))\nRiver.plot(column='wse', ax=ax, legend=True, cmap='viridis')\n\n\n\n\n\n\n\n\n\n\nQuerying a Shapefile\nIf you want to search for a specific reach id or a specific length of river reach that is possible through a spatial query using Geopandas.\nUtilizing comparison operators (>, <, ==, >=, <=).\n\nQuery = River.query(\"reach_id == '72350800091'\")\nQuery\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n212\n72350800091\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n51.966072\n-59.344178\nno_data\n98.3722\n1.77517\n1.77289\n...\n2313.937\n64\n152412.397\n12767.637572\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.37449 52.01016, -59.37465 52.0...\n\n\n\n\n1 rows × 127 columns\n\n\n\n\nfig, ax = plt.subplots(figsize=(25,15))\nQuery.plot(ax=ax, legend=True)\ncx.add_basemap(ax, crs=River.crs, source=cx.providers.Esri.NatGeoWorldMap)\n\n\n\n\n\n\n\n\n\n\nYou can specify river reaches that have a water surface elevation greater than 35 meters.\n\nWSE = River.query('wse > 35')\nWSE\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\n...\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n0\n72302000011\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.945799\n-57.862132\nHumber River\n42.3641\n0.86330\n0.85859\n...\n675.648\n10\n2135.645\n1984.456750\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.87428 48.95038, -57.87387 48.9...\n\n\n3\n72302000051\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n48.995478\n-57.730291\nHumber River\n36.6888\n0.09367\n0.02596\n...\n397.512\n7\n13444.660\n1334.703115\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.73845 48.99230, -57.73804 48.9...\n\n\n9\n72302000111\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:00Z\n49.170904\n-57.404776\nno_data\n118.9760\n0.83515\n0.83029\n...\n105.642\n28\n50331.655\n5596.729779\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-57.43636 49.16979, -57.43570 49.1...\n\n\n10\n72302000123\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:00Z\n49.177845\n-57.348725\nno_data\n116.7355\n0.09589\n0.03309\n...\n35547.561\n20\n54269.288\n3937.633107\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-57.37279 49.17719, -57.37255 49.1...\n\n\n11\n72302000131\n7.606277e+08\n7.606278e+08\n2024-02-07T13:29:01Z\n49.171135\n-57.263679\nno_data\n92.1803\n1.43050\n1.42767\n...\n500301.988\n61\n66530.524\n12261.235771\n-1.000000e+12\n0\n4\n1\n0\nLINESTRING (-57.32502 49.17382, -57.32461 49.1...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n210\n72350800071\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.791094\n-58.985455\nno_data\n97.1169\n3.27810\n3.27686\n...\n821.862\n82\n119786.053\n16448.306136\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.89330 51.77895, -58.89374 51.7...\n\n\n211\n72350800081\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:10Z\n51.886956\n-59.172704\nno_data\n116.8453\n7.56768\n7.56714\n...\n2599.684\n99\n139644.759\n19858.706858\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.07129 51.82866, -59.07148 51.8...\n\n\n212\n72350800091\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n51.966072\n-59.344178\nno_data\n98.3722\n1.77517\n1.77289\n...\n2313.937\n64\n152412.397\n12767.637572\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-59.37449 52.01016, -59.37465 52.0...\n\n\n213\n72350800101\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:01Z\n52.045314\n-59.409170\nSaint-Augustin River\n142.5316\n7.32589\n7.32533\n...\n590.479\n68\n166028.213\n13615.816320\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-59.37465 52.00988, -59.37449 52.0...\n\n\n214\n72350800111\n7.606277e+08\n7.606277e+08\n2024-02-07T13:28:11Z\n51.696292\n-58.702223\nno_data\n104.5083\n12.71013\n12.70981\n...\n1257.012\n97\n79887.666\n19340.975021\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-58.72011 51.63638, -58.72011 51.6...\n\n\n\n\n116 rows × 127 columns\n\n\n\n\nfig, ax = plt.subplots(figsize=(25,15))\nWSE.plot(ax=ax, color='black')\ncx.add_basemap(ax, crs=River.crs, source=cx.providers.Esri.NatGeoWorldMap)", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4658,7 +4658,7 @@ "href": "notebooks/GIS/SWOTshp_CSVconversion.html#before-you-start", "title": "SWOT Shapefile Data Conversion to CSV", "section": "Before you start", - "text": "Before you start\nBefore you beginning this tutorial, make sure you have an account in the Earthdata Login, which is required to access data from the NASA Earthdata system. Please visit https://urs.earthdata.nasa.gov to register for an Earthdata Login account. It is free to create and only takes a moment to set up.\n\nauth = earthaccess.login() \n\n\nSearch for SWOT data\nLet’s start our search for River Vector Shapefiles in North America. SWOT files come in “reach” and “node” versions in the same collection, here we want the 10km reaches rather than the nodes. We will also only get files for North America, or ‘NA’ and can call out a specific pass number that we want. Each dataset has it’s own shortname associate with it, for the SWOT River shapefiles, it is SWOT_L2_HR_RiverSP_2.0.\n\nresults = earthaccess.search_data(short_name = 'SWOT_L2_HR_LAKESP_2.0', \n temporal = ('2024-01-01 00:00:00', '2024-05-30 23:59:59'), # can also specify by time\n granule_name = '*Prior*_009_NA*') # here we filter by Prior files (not observed or Unassigned), pass=009, continent code=NA\n\nGranules found: 4\n\n\nDuring the science orbit, a pass will be repeated once every 21 days. A particular location may have different passes observe it within the 21 days, however.\n\n\nDownload the Data into a folder\n\nearthaccess.download(results, \"../datasets/data_downloads/SWOT_files/\")\nfolder = Path(\"../datasets/data_downloads/SWOT_files\")\n\n Getting 4 granules, approx download size: 0.27 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\nUnzip shapefiles in existing folder\n\nfor item in os.listdir(folder): # loop through items in dir\n if item.endswith(\".zip\"): # check for \".zip\" extension\n zip_ref = zipfile.ZipFile(f\"{folder}/{item}\") # create zipfile object\n zip_ref.extractall(folder) # extract file to dir\n zip_ref.close() # close file\n\n\n\nOpening multiple shapefiles from within a folder\nLets open all the shapefiles we’ve downloaded together into one database. This approach is ideal for a small number of granules, but if you’re looking to create large timeseries, consider using the PO.DAAC Hydrocron tool.\n\n# Initialize list of shapefiles containing all dates\nSWOT_HR_shps = []\n\n# Loop through queried granules to stack all acquisition dates\nfor j in range(len(results)):\n filename = earthaccess.results.DataGranule.data_links(results[j], access='external')\n filename = filename[0].split(\"/\")[-1]\n filename_shp = filename.replace('.zip','.shp')\n filename_shp_path = f\"{folder}\\{filename_shp}\"\n SWOT_HR_shps.append(gpd.read_file(filename_shp_path)) \n\n\n# Combine granules from all acquisition dates into one dataframe\nSWOT_HR_df = gpd.GeoDataFrame(pd.concat(SWOT_HR_shps, ignore_index=True))\n\n# Sort dataframe by lake_id and time\nSWOT_HR_df = SWOT_HR_df.sort_values(['lake_id', 'time'])\n\nSWOT_HR_df\n\n\n\n\n\n\n\n\n\nlake_id\nreach_id\nobs_id\noverlap\nn_overlap\ntime\ntime_tai\ntime_str\nwse\nwse_u\n...\nlake_name\np_res_id\np_lon\np_lat\np_ref_wse\np_ref_area\np_date_t0\np_ds_t0\np_storage\ngeometry\n\n\n\n\n42426\n7120818372\nno_data\n712239L000048\n100\n1\n7.576815e+08\n7.576816e+08\n2024-01-04T11:05:46Z\n4.374300e+02\n6.300000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41107 47.75727, -93.41081 47.757...\n\n\n97969\n7120818372\nno_data\n712239L000028\n100\n1\n7.612870e+08\n7.612870e+08\n2024-02-15T04:35:57Z\n4.373460e+02\n7.900000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41115 47.75730, -93.41090 47.757...\n\n\n156135\n7120818372\nno_data\n712239L000025\n100\n1\n7.648924e+08\n7.648924e+08\n2024-03-27T22:06:05Z\n4.377310e+02\n5.600000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41200 47.75739, -93.41174 47.757...\n\n\n215861\n7120818372\nno_data\n712239L000027\n92\n1\n7.666951e+08\n7.666951e+08\n2024-04-17T18:51:11Z\n4.376710e+02\n2.300000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41199 47.75734, -93.41174 47.757...\n\n\n42460\n7120818382\nno_data\n712239L000049\n99\n1\n7.576815e+08\n7.576816e+08\n2024-01-04T11:05:46Z\n4.257550e+02\n2.100000e-02\n...\nRAT LAKE\n-99999999\n-93.357210\n47.749259\n-1.000000e+12\n0.1989\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.35303 47.75061, -93.35273 47.750...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n206470\n7710076862\nno_data\n771190R000017\n86\n1\n7.666946e+08\n7.666946e+08\n2024-04-17T18:43:01Z\n2.810479e+03\n3.900000e-02\n...\nno_data\n-99999999\n-99.916944\n19.984955\n-1.000000e+12\n0.0459\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-99.91661 19.98636, -99.91650 ...\n\n\n36628\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n73000\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n130255\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n188022\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n\n\n225984 rows × 51 columns\n\n\n\n\n\n\nQuerying a Shapefile\nLet’s get the attributes from a particular reach of the merged shapefile. If you want to search for a specific lake_id, Lake IDs can be identified in the Prior Lake Database (PLD) - Add in the PLD layer into Hydroweb.next to see the lakes SWOT products are based upon.\n\nreach = SWOT_HR_df.query(\"lake_id == '7120818372'\")\nreach\n\n\n\n\n\n\n\n\n\nlake_id\nreach_id\nobs_id\noverlap\nn_overlap\ntime\ntime_tai\ntime_str\nwse\nwse_u\n...\nlake_name\np_res_id\np_lon\np_lat\np_ref_wse\np_ref_area\np_date_t0\np_ds_t0\np_storage\ngeometry\n\n\n\n\n42426\n7120818372\nno_data\n712239L000048\n100\n1\n7.576815e+08\n7.576816e+08\n2024-01-04T11:05:46Z\n437.430\n0.063\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41107 47.75727, -93.41081 47.757...\n\n\n97969\n7120818372\nno_data\n712239L000028\n100\n1\n7.612870e+08\n7.612870e+08\n2024-02-15T04:35:57Z\n437.346\n0.079\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41115 47.75730, -93.41090 47.757...\n\n\n156135\n7120818372\nno_data\n712239L000025\n100\n1\n7.648924e+08\n7.648924e+08\n2024-03-27T22:06:05Z\n437.731\n0.056\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41200 47.75739, -93.41174 47.757...\n\n\n215861\n7120818372\nno_data\n712239L000027\n92\n1\n7.666951e+08\n7.666951e+08\n2024-04-17T18:51:11Z\n437.671\n0.023\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41199 47.75734, -93.41174 47.757...\n\n\n\n\n4 rows × 51 columns\n\n\n\n\n\n\nConverting to CSV\nWe can convert the merged timeseries geodataframe for this reach into a csv file.\n\ngdf.to_csv(folder / 'csv_77125000273.csv')", + "text": "Before you start\nBefore you beginning this tutorial, make sure you have an account in the Earthdata Login, which is required to access data from the NASA Earthdata system. Please visit https://urs.earthdata.nasa.gov to register for an Earthdata Login account. It is free to create and only takes a moment to set up.\n\nauth = earthaccess.login() \n\n\nSearch for SWOT data\nLet’s start our search for River Vector Shapefiles in North America. SWOT files come in “reach” and “node” versions in the same collection, here we want the 10km reaches rather than the nodes. We will also only get files for North America, or ‘NA’ and can call out a specific pass number that we want. Each dataset has it’s own shortname associate with it, for the SWOT River shapefiles, it is SWOT_L2_HR_RiverSP_2.0.\n\nresults = earthaccess.search_data(short_name = 'SWOT_L2_HR_LAKESP_2.0', \n temporal = ('2024-01-01 00:00:00', '2024-05-30 23:59:59'), # can also specify by time\n granule_name = '*Prior*_009_NA*') # here we filter by Prior files (not observed or Unassigned), pass=009, continent code=NA\n\nGranules found: 4\n\n\nDuring the science orbit, a pass will be repeated once every 21 days. A particular location may have different passes observe it within the 21 days, however.\n\n\nDownload the Data into a folder\n\nearthaccess.download(results, \"../datasets/data_downloads/SWOT_files/\")\nfolder = Path(\"../datasets/data_downloads/SWOT_files\")\n\n Getting 4 granules, approx download size: 0.27 GB\n\n\n\n\n\n\n\n\n\n\n\n\n\nUnzip shapefiles in existing folder\n\nfor item in os.listdir(folder): # loop through items in dir\n if item.endswith(\".zip\"): # check for \".zip\" extension\n zip_ref = zipfile.ZipFile(f\"{folder}/{item}\") # create zipfile object\n zip_ref.extractall(folder) # extract file to dir\n zip_ref.close() # close file\n\n\n\nOpening multiple shapefiles from within a folder\nLets open all the shapefiles we’ve downloaded together into one database. This approach is ideal for a small number of granules, but if you’re looking to create large timeseries, consider using the PO.DAAC Hydrocron tool.\n\n# Initialize list of shapefiles containing all dates\nSWOT_HR_shps = []\n\n# Loop through queried granules to stack all acquisition dates\nfor j in range(len(results)):\n filename = earthaccess.results.DataGranule.data_links(results[j], access='external')\n filename = filename[0].split(\"/\")[-1]\n filename_shp = filename.replace('.zip','.shp')\n filename_shp_path = f\"{folder}\\{filename_shp}\"\n SWOT_HR_shps.append(gpd.read_file(filename_shp_path)) \n\n\n# Combine granules from all acquisition dates into one dataframe\nSWOT_HR_df = gpd.GeoDataFrame(pd.concat(SWOT_HR_shps, ignore_index=True))\n\n# Sort dataframe by lake_id and time\nSWOT_HR_df = SWOT_HR_df.sort_values(['lake_id', 'time'])\n\nSWOT_HR_df\n\n\n\n\n\n\n\n\nlake_id\nreach_id\nobs_id\noverlap\nn_overlap\ntime\ntime_tai\ntime_str\nwse\nwse_u\n...\nlake_name\np_res_id\np_lon\np_lat\np_ref_wse\np_ref_area\np_date_t0\np_ds_t0\np_storage\ngeometry\n\n\n\n\n42426\n7120818372\nno_data\n712239L000048\n100\n1\n7.576815e+08\n7.576816e+08\n2024-01-04T11:05:46Z\n4.374300e+02\n6.300000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41107 47.75727, -93.41081 47.757...\n\n\n97969\n7120818372\nno_data\n712239L000028\n100\n1\n7.612870e+08\n7.612870e+08\n2024-02-15T04:35:57Z\n4.373460e+02\n7.900000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41115 47.75730, -93.41090 47.757...\n\n\n156135\n7120818372\nno_data\n712239L000025\n100\n1\n7.648924e+08\n7.648924e+08\n2024-03-27T22:06:05Z\n4.377310e+02\n5.600000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41200 47.75739, -93.41174 47.757...\n\n\n215861\n7120818372\nno_data\n712239L000027\n92\n1\n7.666951e+08\n7.666951e+08\n2024-04-17T18:51:11Z\n4.376710e+02\n2.300000e-02\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41199 47.75734, -93.41174 47.757...\n\n\n42460\n7120818382\nno_data\n712239L000049\n99\n1\n7.576815e+08\n7.576816e+08\n2024-01-04T11:05:46Z\n4.257550e+02\n2.100000e-02\n...\nRAT LAKE\n-99999999\n-93.357210\n47.749259\n-1.000000e+12\n0.1989\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.35303 47.75061, -93.35273 47.750...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n206470\n7710076862\nno_data\n771190R000017\n86\n1\n7.666946e+08\n7.666946e+08\n2024-04-17T18:43:01Z\n2.810479e+03\n3.900000e-02\n...\nno_data\n-99999999\n-99.916944\n19.984955\n-1.000000e+12\n0.0459\nno_data\n-1.000000e+12\n-1.000000e+12\nMULTIPOLYGON (((-99.91661 19.98636, -99.91650 ...\n\n\n36628\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n73000\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n130255\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n188022\n7710076872\nno_data\nno_data\nno_data\nno_data\n-1.000000e+12\n-1.000000e+12\nno_data\n-1.000000e+12\n-1.000000e+12\n...\nno_data\n-99999999\n-100.263287\n20.393474\n-1.000000e+12\n0.0513\nno_data\n-1.000000e+12\n-1.000000e+12\nNone\n\n\n\n\n225984 rows × 51 columns\n\n\n\n\n\nQuerying a Shapefile\nLet’s get the attributes from a particular reach of the merged shapefile. If you want to search for a specific lake_id, Lake IDs can be identified in the Prior Lake Database (PLD) - Add in the PLD layer into Hydroweb.next to see the lakes SWOT products are based upon.\n\nreach = SWOT_HR_df.query(\"lake_id == '7120818372'\")\nreach\n\n\n\n\n\n\n\n\nlake_id\nreach_id\nobs_id\noverlap\nn_overlap\ntime\ntime_tai\ntime_str\nwse\nwse_u\n...\nlake_name\np_res_id\np_lon\np_lat\np_ref_wse\np_ref_area\np_date_t0\np_ds_t0\np_storage\ngeometry\n\n\n\n\n42426\n7120818372\nno_data\n712239L000048\n100\n1\n7.576815e+08\n7.576816e+08\n2024-01-04T11:05:46Z\n437.430\n0.063\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41107 47.75727, -93.41081 47.757...\n\n\n97969\n7120818372\nno_data\n712239L000028\n100\n1\n7.612870e+08\n7.612870e+08\n2024-02-15T04:35:57Z\n437.346\n0.079\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41115 47.75730, -93.41090 47.757...\n\n\n156135\n7120818372\nno_data\n712239L000025\n100\n1\n7.648924e+08\n7.648924e+08\n2024-03-27T22:06:05Z\n437.731\n0.056\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41200 47.75739, -93.41174 47.757...\n\n\n215861\n7120818372\nno_data\n712239L000027\n92\n1\n7.666951e+08\n7.666951e+08\n2024-04-17T18:51:11Z\n437.671\n0.023\n...\nno_data\n-99999999\n-93.412112\n47.756423\n-1.000000e+12\n0.0207\nno_data\n-1.000000e+12\n-1.000000e+12\nPOLYGON ((-93.41199 47.75734, -93.41174 47.757...\n\n\n\n\n4 rows × 51 columns\n\n\n\n\n\nConverting to CSV\nWe can convert the merged timeseries geodataframe for this reach into a csv file.\n\ngdf.to_csv(folder / 'csv_7120818372.csv')", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4724,7 +4724,7 @@ "href": "notebooks/DataStories/SWOTHR_Science_Application.html#retrieve-swot-hydrological-attributes-on-river-reaches-within-the-aws-cloud-calval-data", "title": "SWOT Hydrology Science Application Tutorial on the Cloud", "section": "1. Retrieve SWOT hydrological attributes on river reaches within the AWS cloud (Cal/Val data)", - "text": "1. Retrieve SWOT hydrological attributes on river reaches within the AWS cloud (Cal/Val data)\n\nWhat data should we download?\n\nOptional step: Get the .kmz file of SWOT passes/swaths for the and import it into Google Earth for visualization\nDetermine which pass number corresponds to the river/basin you want to look at! #### Search for multiple days of data\n\n\n# Enter pass number\npass_number = [\"341\", \"576\", \"298\"] #e.g. 341, 576, 298 for Connecticut in NA, \"236\", \"514\", \"542\", \"085\", \"363\", \"057\", \"335\", \"029\" for Rhine in EU\n# Enter continent code\ncontinent_code = \"NA\" # e.g. \"AF\", \"NA\", \"EU\", \"SI\", \"AS\", \"AU\", \"SA\", \"AR\", \"GR\"\n\n# Retrieves granulev and links list from the passes we want, in this case by passing to `earthdata.search_data` function the data collection shortname and temporal bounds\nlinks_list = []\nfor p in range(len(pass_number)):\n river_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n temporal = ('2024-01-25 00:00:00', '2024-03-29 23:59:59'),\n granule_name = \"*Reach*_\" + pass_number[p] + \"_\" + continent_code + \"*\")\n for r in range(len(river_results)):\n river_link = earthaccess.results.DataGranule.data_links(river_results[r], access='direct')[0]\n links_list.append(river_link)\n\nGranules found: 2\nGranules found: 3\nGranules found: 3\n\n\n\n# Create fiona session to read data from zip files without download and extraction\nfs_s3 = earthaccess.get_s3fs_session(results=river_results)\nfiona_session=fiona.session.AWSSession(\n aws_access_key_id=fs_s3.storage_options[\"key\"],\n aws_secret_access_key=fs_s3.storage_options[\"secret\"],\n aws_session_token=fs_s3.storage_options[\"token\"]\n )\n\n\nlinks_list\n\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_010_341_NA_20240206T041926_20240206T041927_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_011_341_NA_20240227T010431_20240227T010433_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_010_576_NA_20240214T133056_20240214T133057_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_011_576_NA_20240306T101600_20240306T101602_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_012_576_NA_20240327T070054_20240327T070055_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_010_298_NA_20240204T150846_20240204T150850_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_011_298_NA_20240225T115352_20240225T115356_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_012_298_NA_20240317T083854_20240317T083858_PIC0_01.zip']\n\n\n\n\nUnzip selected files in Fiona session\n\n# Initialize list of shapefiles containing all dates\nSWOT_HR_shps = []\n\n# Loop through queried granules to stack all acquisition dates\nfor j in range(len(links_list)):\n \n # We use the zip+ prefix so fiona knows that we are operating on a zip file\n river_shp_url = f\"zip+{links_list[j]}\"\n \n # Read shapefile\n with fiona.Env(session=fiona_session):\n SWOT_HR_shps.append(gpd.read_file(river_shp_url)) \n\n\n\nAggregate unzipped files into dataframe\n\n# Combine granules from all acquisition dates into one dataframe\nSWOT_HR_df = gpd.GeoDataFrame(pd.concat(SWOT_HR_shps, ignore_index=True))\n\n# Sort dataframe by reach_id and time\nSWOT_HR_df = SWOT_HR_df.sort_values(['reach_id', 'time'])\n\nSWOT_HR_df\n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n3738\n72120300121\n-1.000000e+12\n-1.000000e+12\nno_data\n50.355053\n-77.287576\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120300206, no_data, no_data, no_data\n72120300113, no_data, no_data, no_data\n248.199997\n0.031587\n45.0\n217.523\n86\n228174.350\n17135.322465\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-77.37319 50.31698, -77.37277 50.3...\n\n\n4454\n72120300121\n-1.000000e+12\n-1.000000e+12\nno_data\n50.355053\n-77.287576\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120300206, no_data, no_data, no_data\n72120300113, no_data, no_data, no_data\n248.199997\n0.031587\n45.0\n217.523\n86\n228174.350\n17135.322465\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-77.37319 50.31698, -77.37277 50.3...\n\n\n5170\n72120300121\n-1.000000e+12\n-1.000000e+12\nno_data\n50.355053\n-77.287576\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120300206, no_data, no_data, no_data\n72120300113, no_data, no_data, no_data\n248.199997\n0.031587\n45.0\n217.523\n86\n228174.350\n17135.322465\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-77.37319 50.31698, -77.37277 50.3...\n\n\n3739\n72120400051\n-1.000000e+12\n-1.000000e+12\nno_data\n49.864785\n-76.975406\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120400063, no_data, no_data, no_data\n72120400043, no_data, no_data, no_data\n256.399994\n2.569541\n291.0\n19982.483\n91\n308791.019\n18231.842622\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-77.06133 49.85771, -77.06092 49.8...\n\n\n4455\n72120400051\n-1.000000e+12\n-1.000000e+12\nno_data\n49.864785\n-76.975406\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120400063, no_data, no_data, no_data\n72120400043, no_data, no_data, no_data\n256.399994\n2.569541\n291.0\n19982.483\n91\n308791.019\n18231.842622\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-77.06133 49.85771, -77.06092 49.8...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n3128\n76500000131\n7.630360e+08\n7.630361e+08\n2024-03-06T10:26:58Z\n18.255350\n-66.012657\nno_data\n5.148830e+01\n7.147400e-01\n7.090500e-01\n-1.000000e+12\n-1.000000e+12\n-1.896964e-03\n1.029344e-05\n9.846570e-06\n-2.579608e-03\n-1.000000e+12\n1.179402e-01\n8.228150e+02\n3.330908e+00\n-1.000000e+12\n-1.000000e+12\n9.494502e+06\n3.843551e+04\n9.472037e+06\n3.843550e+04\n9.494502e+06\n-1.000000e+12\n-1.000000e+12\n7.219900e+00\n2.269424e+02\n3.555010e+01\n-9.718222e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n542734\n2.366000e-03\n0\n-999\n0\n33\n5.409836e-01\n0\n-4.203993e+01\n-5.959560e-05\n-1.099997e-01\n-7.083979e-03\n-9.455572e-03\n2.673383e-03\n-2.300245e+00\n-2.157397e-01\n-2.978376e-03\n3.877690e-01\n1\n1\n76500000141, no_data, no_data, no_data\n76500000123, no_data, no_data, no_data\n40.600002\n43.251021\n63.0\n1149.474\n61\n43590.077\n12103.909044\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-65.99988 18.21743, -66.00022 18.2...\n\n\n3736\n76500000131\n7.648387e+08\n7.648388e+08\n2024-03-27T07:11:56Z\n18.255350\n-66.012657\nno_data\n6.214650e+01\n2.573330e+00\n2.571760e+00\n-1.000000e+12\n-1.000000e+12\n-3.331055e-03\n3.849838e-05\n3.838132e-05\n-3.053041e-03\n-1.000000e+12\n2.653730e+00\n1.336966e+03\n4.963007e+00\n-1.000000e+12\n-1.000000e+12\n1.465627e+07\n5.440614e+04\n1.461890e+07\n5.440610e+04\n1.465627e+07\n-1.000000e+12\n-1.000000e+12\n6.300200e+00\n2.618109e+02\n1.134880e+02\n-9.406573e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n575498\n2.549000e-03\n0\n-999\n1\n25\n4.098361e-01\n2\n-4.208252e+01\n-6.235580e-05\n7.611858e-02\n1.698115e-03\n3.022270e-03\n1.955032e-03\n-2.290476e+00\n-1.451549e-01\n-6.110505e-03\n0.000000e+00\n1\n1\n76500000141, no_data, no_data, no_data\n76500000123, no_data, no_data, no_data\n40.600002\n43.251021\n63.0\n1149.474\n61\n43590.077\n12103.909044\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-65.99988 18.21743, -66.00022 18.2...\n\n\n2523\n76500000141\n7.612333e+08\n7.612334e+08\n2024-02-14T13:41:54Z\n18.214094\n-65.999696\nno_data\n7.122600e+01\n9.093000e-02\n1.299000e-02\n-1.000000e+12\n-1.000000e+12\n-1.424304e-02\n3.561229e-05\n3.548571e-05\n-4.944832e-02\n-1.000000e+12\n2.070532e-04\n2.976488e+02\n7.012993e+00\n-1.000000e+12\n-1.000000e+12\n2.374517e+05\n5.594670e+03\n2.374517e+05\n5.594700e+03\n2.374517e+05\n-1.000000e+12\n-1.000000e+12\n1.040700e+00\n3.071884e+02\n3.960115e+01\n-9.825143e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n542730\n0.000000e+00\n0\n-999\n0\n2\n5.000000e-01\n0\n-4.162250e+01\n-1.538206e-04\n-1.459826e-01\n-1.125507e-02\n-9.715600e-03\n3.041269e-03\n-2.308736e+00\n-1.868137e-01\n-9.129797e-03\n6.605130e-02\n2\n1\n76500000161, 76500000151, no_data, no_data\n76500000131, no_data, no_data, no_data\n63.100002\n20.898301\n30.0\n415.706\n4\n44387.835\n797.757834\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-66.00018 18.21038, -66.00018 18.2...\n\n\n3129\n76500000141\n7.630360e+08\n7.630361e+08\n2024-03-06T10:26:58Z\n18.214094\n-65.999696\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n3.717835e+02\n7.669814e+00\n-1.000000e+12\n-1.000000e+12\n2.965932e+05\n6.118654e+03\n2.965932e+05\n6.118700e+03\n2.965932e+05\n-1.000000e+12\n-1.000000e+12\n0.000000e+00\n2.817323e+02\n3.577332e+01\n-1.006446e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n29360570\n29360570\n3\n503351296\n0.000000e+00\n0\n-999\n1\n0\n0.000000e+00\n2\n-4.161941e+01\n-1.000000e+12\n-1.098480e-01\n-6.989030e-03\n-9.287705e-03\n2.667307e-03\n-2.297567e+00\n-2.175007e-01\n-2.980941e-03\n4.020248e-01\n2\n1\n76500000161, 76500000151, no_data, no_data\n76500000131, no_data, no_data, no_data\n63.100002\n20.898301\n30.0\n415.706\n4\n44387.835\n797.757834\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-66.00018 18.21038, -66.00018 18.2...\n\n\n3737\n76500000141\n7.648387e+08\n7.648388e+08\n2024-03-27T07:11:56Z\n18.214094\n-65.999696\nno_data\n8.508610e+01\n9.025000e-02\n6.690000e-03\n-1.000000e+12\n-1.000000e+12\n-9.286700e-03\n4.201405e-05\n4.190681e-05\n-1.123384e-02\n-1.000000e+12\n1.623781e-04\n8.786977e+02\n1.250254e+01\n-1.000000e+12\n-1.000000e+12\n7.009880e+05\n9.974001e+03\n7.009880e+05\n9.974000e+03\n7.009880e+05\n-1.000000e+12\n-1.000000e+12\n1.628500e+00\n1.992412e+02\n1.928564e+01\n-9.878682e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n540682\n0.000000e+00\n0\n-999\n0\n3\n7.500000e-01\n2\n-4.163959e+01\n-6.160100e-05\n7.617028e-02\n1.573288e-03\n2.859416e-03\n1.950453e-03\n-2.290005e+00\n-1.457697e-01\n-6.110666e-03\n0.000000e+00\n2\n1\n76500000161, 76500000151, no_data, no_data\n76500000131, no_data, no_data, no_data\n63.100002\n20.898301\n30.0\n415.706\n4\n44387.835\n797.757834\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-66.00018 18.21038, -66.00018 18.2...\n\n\n\n\n5886 rows × 127 columns", + "text": "1. Retrieve SWOT hydrological attributes on river reaches within the AWS cloud (Cal/Val data)\n\nWhat data should we download?\n\nOptional step: Get the .kmz file of SWOT passes/swaths for the and import it into Google Earth for visualization\nDetermine which pass number corresponds to the river/basin you want to look at! #### Search for multiple days of data\n\n\n# Enter pass number\npass_number = [\"341\", \"576\", \"298\"] #e.g. 341, 576, 298 for Connecticut in NA, \"236\", \"514\", \"542\", \"085\", \"363\", \"057\", \"335\", \"029\" for Rhine in EU\n# Enter continent code\ncontinent_code = \"NA\" # e.g. \"AF\", \"NA\", \"EU\", \"SI\", \"AS\", \"AU\", \"SA\", \"AR\", \"GR\"\n\n# Retrieves granulev and links list from the passes we want, in this case by passing to `earthdata.search_data` function the data collection shortname and temporal bounds\nlinks_list = []\nfor p in range(len(pass_number)):\n river_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_RIVERSP_2.0', \n temporal = ('2024-01-25 00:00:00', '2024-03-29 23:59:59'),\n granule_name = \"*Reach*_\" + pass_number[p] + \"_\" + continent_code + \"*\")\n for r in range(len(river_results)):\n river_link = earthaccess.results.DataGranule.data_links(river_results[r], access='direct')[0]\n links_list.append(river_link)\n\nGranules found: 2\nGranules found: 3\nGranules found: 3\n\n\n\n# Create fiona session to read data from zip files without download and extraction\nfs_s3 = earthaccess.get_s3fs_session(results=river_results)\nfiona_session=fiona.session.AWSSession(\n aws_access_key_id=fs_s3.storage_options[\"key\"],\n aws_secret_access_key=fs_s3.storage_options[\"secret\"],\n aws_session_token=fs_s3.storage_options[\"token\"]\n )\n\n\nlinks_list\n\n['s3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_010_341_NA_20240206T041926_20240206T041927_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_011_341_NA_20240227T010431_20240227T010433_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_010_576_NA_20240214T133056_20240214T133057_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_011_576_NA_20240306T101600_20240306T101602_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_012_576_NA_20240327T070054_20240327T070055_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_010_298_NA_20240204T150846_20240204T150850_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_011_298_NA_20240225T115352_20240225T115356_PIC0_01.zip',\n 's3://podaac-swot-ops-cumulus-protected/SWOT_L2_HR_RiverSP_2.0/SWOT_L2_HR_RiverSP_Reach_012_298_NA_20240317T083854_20240317T083858_PIC0_01.zip']\n\n\n\n\nUnzip selected files in Fiona session\n\n# Initialize list of shapefiles containing all dates\nSWOT_HR_shps = []\n\n# Loop through queried granules to stack all acquisition dates\nfor j in range(len(links_list)):\n \n # We use the zip+ prefix so fiona knows that we are operating on a zip file\n river_shp_url = f\"zip+{links_list[j]}\"\n \n # Read shapefile\n with fiona.Env(session=fiona_session):\n SWOT_HR_shps.append(gpd.read_file(river_shp_url)) \n\n\n\nAggregate unzipped files into dataframe\n\n# Combine granules from all acquisition dates into one dataframe\nSWOT_HR_df = gpd.GeoDataFrame(pd.concat(SWOT_HR_shps, ignore_index=True))\n\n# Sort dataframe by reach_id and time\nSWOT_HR_df = SWOT_HR_df.sort_values(['reach_id', 'time'])\n\nSWOT_HR_df\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n3738\n72120300121\n-1.000000e+12\n-1.000000e+12\nno_data\n50.355053\n-77.287576\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120300206, no_data, no_data, no_data\n72120300113, no_data, no_data, no_data\n248.199997\n0.031587\n45.0\n217.523\n86\n228174.350\n17135.322465\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-77.37319 50.31698, -77.37277 50.3...\n\n\n4454\n72120300121\n-1.000000e+12\n-1.000000e+12\nno_data\n50.355053\n-77.287576\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120300206, no_data, no_data, no_data\n72120300113, no_data, no_data, no_data\n248.199997\n0.031587\n45.0\n217.523\n86\n228174.350\n17135.322465\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-77.37319 50.31698, -77.37277 50.3...\n\n\n5170\n72120300121\n-1.000000e+12\n-1.000000e+12\nno_data\n50.355053\n-77.287576\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120300206, no_data, no_data, no_data\n72120300113, no_data, no_data, no_data\n248.199997\n0.031587\n45.0\n217.523\n86\n228174.350\n17135.322465\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-77.37319 50.31698, -77.37277 50.3...\n\n\n3739\n72120400051\n-1.000000e+12\n-1.000000e+12\nno_data\n49.864785\n-76.975406\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120400063, no_data, no_data, no_data\n72120400043, no_data, no_data, no_data\n256.399994\n2.569541\n291.0\n19982.483\n91\n308791.019\n18231.842622\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-77.06133 49.85771, -77.06092 49.8...\n\n\n4455\n72120400051\n-1.000000e+12\n-1.000000e+12\nno_data\n49.864785\n-76.975406\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n12582912\n12582912\n3\n469762048\n-1.000000e+12\n2\n-999\n1\n-999\n-1.000000e+12\n2\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n1\n1\n72120400063, no_data, no_data, no_data\n72120400043, no_data, no_data, no_data\n256.399994\n2.569541\n291.0\n19982.483\n91\n308791.019\n18231.842622\n-1.000000e+12\n0\n3\n1\n0\nLINESTRING (-77.06133 49.85771, -77.06092 49.8...\n\n\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n...\n\n\n3128\n76500000131\n7.630360e+08\n7.630361e+08\n2024-03-06T10:26:58Z\n18.255350\n-66.012657\nno_data\n5.148830e+01\n7.147400e-01\n7.090500e-01\n-1.000000e+12\n-1.000000e+12\n-1.896964e-03\n1.029344e-05\n9.846570e-06\n-2.579608e-03\n-1.000000e+12\n1.179402e-01\n8.228150e+02\n3.330908e+00\n-1.000000e+12\n-1.000000e+12\n9.494502e+06\n3.843551e+04\n9.472037e+06\n3.843550e+04\n9.494502e+06\n-1.000000e+12\n-1.000000e+12\n7.219900e+00\n2.269424e+02\n3.555010e+01\n-9.718222e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n542734\n2.366000e-03\n0\n-999\n0\n33\n5.409836e-01\n0\n-4.203993e+01\n-5.959560e-05\n-1.099997e-01\n-7.083979e-03\n-9.455572e-03\n2.673383e-03\n-2.300245e+00\n-2.157397e-01\n-2.978376e-03\n3.877690e-01\n1\n1\n76500000141, no_data, no_data, no_data\n76500000123, no_data, no_data, no_data\n40.600002\n43.251021\n63.0\n1149.474\n61\n43590.077\n12103.909044\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-65.99988 18.21743, -66.00022 18.2...\n\n\n3736\n76500000131\n7.648387e+08\n7.648388e+08\n2024-03-27T07:11:56Z\n18.255350\n-66.012657\nno_data\n6.214650e+01\n2.573330e+00\n2.571760e+00\n-1.000000e+12\n-1.000000e+12\n-3.331055e-03\n3.849838e-05\n3.838132e-05\n-3.053041e-03\n-1.000000e+12\n2.653730e+00\n1.336966e+03\n4.963007e+00\n-1.000000e+12\n-1.000000e+12\n1.465627e+07\n5.440614e+04\n1.461890e+07\n5.440610e+04\n1.465627e+07\n-1.000000e+12\n-1.000000e+12\n6.300200e+00\n2.618109e+02\n1.134880e+02\n-9.406573e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n575498\n2.549000e-03\n0\n-999\n1\n25\n4.098361e-01\n2\n-4.208252e+01\n-6.235580e-05\n7.611858e-02\n1.698115e-03\n3.022270e-03\n1.955032e-03\n-2.290476e+00\n-1.451549e-01\n-6.110505e-03\n0.000000e+00\n1\n1\n76500000141, no_data, no_data, no_data\n76500000123, no_data, no_data, no_data\n40.600002\n43.251021\n63.0\n1149.474\n61\n43590.077\n12103.909044\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-65.99988 18.21743, -66.00022 18.2...\n\n\n2523\n76500000141\n7.612333e+08\n7.612334e+08\n2024-02-14T13:41:54Z\n18.214094\n-65.999696\nno_data\n7.122600e+01\n9.093000e-02\n1.299000e-02\n-1.000000e+12\n-1.000000e+12\n-1.424304e-02\n3.561229e-05\n3.548571e-05\n-4.944832e-02\n-1.000000e+12\n2.070532e-04\n2.976488e+02\n7.012993e+00\n-1.000000e+12\n-1.000000e+12\n2.374517e+05\n5.594670e+03\n2.374517e+05\n5.594700e+03\n2.374517e+05\n-1.000000e+12\n-1.000000e+12\n1.040700e+00\n3.071884e+02\n3.960115e+01\n-9.825143e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n542730\n0.000000e+00\n0\n-999\n0\n2\n5.000000e-01\n0\n-4.162250e+01\n-1.538206e-04\n-1.459826e-01\n-1.125507e-02\n-9.715600e-03\n3.041269e-03\n-2.308736e+00\n-1.868137e-01\n-9.129797e-03\n6.605130e-02\n2\n1\n76500000161, 76500000151, no_data, no_data\n76500000131, no_data, no_data, no_data\n63.100002\n20.898301\n30.0\n415.706\n4\n44387.835\n797.757834\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-66.00018 18.21038, -66.00018 18.2...\n\n\n3129\n76500000141\n7.630360e+08\n7.630361e+08\n2024-03-06T10:26:58Z\n18.214094\n-65.999696\nno_data\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n3.717835e+02\n7.669814e+00\n-1.000000e+12\n-1.000000e+12\n2.965932e+05\n6.118654e+03\n2.965932e+05\n6.118700e+03\n2.965932e+05\n-1.000000e+12\n-1.000000e+12\n0.000000e+00\n2.817323e+02\n3.577332e+01\n-1.006446e+04\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n29360570\n29360570\n3\n503351296\n0.000000e+00\n0\n-999\n1\n0\n0.000000e+00\n2\n-4.161941e+01\n-1.000000e+12\n-1.098480e-01\n-6.989030e-03\n-9.287705e-03\n2.667307e-03\n-2.297567e+00\n-2.175007e-01\n-2.980941e-03\n4.020248e-01\n2\n1\n76500000161, 76500000151, no_data, no_data\n76500000131, no_data, no_data, no_data\n63.100002\n20.898301\n30.0\n415.706\n4\n44387.835\n797.757834\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-66.00018 18.21038, -66.00018 18.2...\n\n\n3737\n76500000141\n7.648387e+08\n7.648388e+08\n2024-03-27T07:11:56Z\n18.214094\n-65.999696\nno_data\n8.508610e+01\n9.025000e-02\n6.690000e-03\n-1.000000e+12\n-1.000000e+12\n-9.286700e-03\n4.201405e-05\n4.190681e-05\n-1.123384e-02\n-1.000000e+12\n1.623781e-04\n8.786977e+02\n1.250254e+01\n-1.000000e+12\n-1.000000e+12\n7.009880e+05\n9.974001e+03\n7.009880e+05\n9.974000e+03\n7.009880e+05\n-1.000000e+12\n-1.000000e+12\n1.628500e+00\n1.992412e+02\n1.928564e+01\n-9.878682e+03\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n540682\n0.000000e+00\n0\n-999\n0\n3\n7.500000e-01\n2\n-4.163959e+01\n-6.160100e-05\n7.617028e-02\n1.573288e-03\n2.859416e-03\n1.950453e-03\n-2.290005e+00\n-1.457697e-01\n-6.110666e-03\n0.000000e+00\n2\n1\n76500000161, 76500000151, no_data, no_data\n76500000131, no_data, no_data, no_data\n63.100002\n20.898301\n30.0\n415.706\n4\n44387.835\n797.757834\n-1.000000e+12\n0\n1\n1\n0\nLINESTRING (-66.00018 18.21038, -66.00018 18.2...\n\n\n\n\n5886 rows × 127 columns", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4750,7 +4750,7 @@ "href": "notebooks/DataStories/SWOTHR_Science_Application.html#river-longitudinal-profile-trace-reaches-downstream-of-given-starting-reach-using-rch_id_dn-field", "title": "SWOT Hydrology Science Application Tutorial on the Cloud", "section": "2. River longitudinal profile: trace reaches downstream of given starting reach using rch_id_dn field", - "text": "2. River longitudinal profile: trace reaches downstream of given starting reach using rch_id_dn field\nWARNING: This works as long as the data is exhaustive (no missing SWORD reaches)\n\nFirst, let’s set up a dictionary relating all reaches in the dataset to their downstream neighbor\nNote: rch_dn_dict[rch_id] gives a list of all the reaches directly downstream from rch_id\n\n# Format rch_id_dn for dictionary. Rch_id_dn allows for multiple downstream reaches to be stored\n# Also removes spaces in attribute field\nrch_id_dn = [[x.strip() for x in SWOT_HR_df.rch_id_dn[j].split(',')] for j in range(0,len(SWOT_HR_df.rch_id_dn))]\n\n# Filter upstream reach ids to remove 'no_data'\nrch_id_dn_filter = [[x for x in dn_id if x.isnumeric()] for dn_id in rch_id_dn]\n\n# Create lookup dictionary for river network topology: Downstream\nrch_dn_dict = {SWOT_HR_df.reach_id[i]: rch_id_dn_filter[i] for i in range(len(SWOT_HR_df))}\n\n\n\nThen, starting from a given reach, let’s trace all connected downstream reaches\n\n# Enter reach_id from which we will trace downstream (e.g. headwaters of the Connecticut River)\nrch_dn_st = {\"Connecticut River\": '73120000691',\n \"Rhine\": '23267000651'\n }\n\n# Initialize list to store downstream reaches, including starting reach\nrch_dn_list = [rch_dn_st[river]]\n# Retrieve first downstream id of starting reach and add to list\nrch_dn_next = rch_dn_dict[rch_dn_st[river]][0]\n\n# Trace next downstream reach until we hit the outlet (or here the last reach on file)\nwhile len(rch_dn_next) != 0:\n # Add reach to list if value exists\n if len(rch_dn_next) != 0:\n rch_dn_list.append(rch_dn_next)\n # Recursively retrieve first downstream id of next reach\n # Catch error if reach isn't in downloaded data\n try:\n rch_dn_next = rch_dn_dict[rch_dn_next][0]\n except:\n break\n\n\n\nFinally, we filtered our downloaded data by the traced reaches to create a plot\n\n# Filter downloaded data by downstream traced reaches\nSWOT_dn_trace = SWOT_HR_df[SWOT_HR_df.reach_id.isin(rch_dn_list)]\n\n# Remove reaches from rch_dn_list that are not present in SWOT data\nrch_dn_list = [rch for rch in rch_dn_list if rch in SWOT_HR_df.reach_id.values]\n\nSWOT_dn_trace[['reach_id','river_name','geometry']].explore('river_name', style_kwds=dict(weight=6))\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\n\nIt looks like the data was cut short!\nMust be an error in the SWORD Database. Let’s check by singling out the reach it left off on.\nIt looks like reach ‘73120000531’ at the time of this run (4/1/24) has ‘no_data’ in the rch_id_up and rch_id_dn fields when there should be values. To help out the SWORD database creators, we can report this discrepancy by clicking the Report Reach button at https://www.swordexplorer.com/. SWORD should be updated quarterly.\n\nSWOT_HR_df[SWOT_HR_df.reach_id == '73120000531']\n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n866\n73120000531\n7.605090e+08\n7.605090e+08\n2024-02-06T04:29:59Z\n44.224658\n-72.054978\nConnecticut River\n154.0388\n1.46533\n1.46257\n-1.000000e+12\n-1.000000e+12\n-0.005891\n0.000053\n0.000053\n-0.006434\n-1.000000e+12\n0.896640\n1392.178327\n35.649174\n-1.000000e+12\n-1.000000e+12\n15211862.6\n389526.4859\n15095057.3\n389526.5\n15211862.6\n-1.000000e+12\n-1.000000e+12\n7.8523\n105.676909\n10.84167\n9765.19336\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n540686\n0.007679\n2\n-999\n0\n33\n0.589286\n0\n-28.335190\n9.845300e-07\n0.172423\n0.010426\n0.010006\n0.005676\n-2.282196\n-0.045801\n-0.003250\n0.121413\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n2477\n73120000531\n7.612328e+08\n7.612329e+08\n2024-02-14T13:34:08Z\n44.224658\n-72.054978\nConnecticut River\n128.0371\n0.32207\n0.30924\n-1.000000e+12\n-1.000000e+12\n0.000855\n0.000167\n0.000167\n0.000768\n-1.000000e+12\n0.006689\n236.948849\n1.282518\n-1.000000e+12\n-1.000000e+12\n2640563.8\n14292.4126\n2161135.3\n14292.4\n2640563.8\n-1.000000e+12\n-1.000000e+12\n8.2052\n54.052922\n0.21296\n-21062.49316\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n1\n14\n0.181563\n2\n-999\n0\n44\n0.785714\n1\n-28.335581\n2.610410e-06\n-0.117483\n-0.005037\n-0.004920\n0.005339\n-2.264607\n-0.021861\n-0.006972\n0.192579\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n1825\n73120000531\n7.623117e+08\n7.623117e+08\n2024-02-27T01:15:04Z\n44.224658\n-72.054978\nConnecticut River\n128.0144\n1.19649\n1.19310\n-1.000000e+12\n-1.000000e+12\n0.001347\n0.000243\n0.000243\n0.001149\n-1.000000e+12\n0.059092\n140.618093\n1.530273\n-1.000000e+12\n-1.000000e+12\n1567051.5\n17053.4007\n929680.4\n17053.4\n1567051.5\n-1.000000e+12\n-1.000000e+12\n9.2751\n57.946006\n0.51076\n9967.06689\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n542734\n0.406733\n2\n-999\n0\n28\n0.500000\n0\n-28.334133\n7.037000e-07\n-0.090734\n-0.008116\n-0.007447\n0.004975\n-2.278251\n-0.039789\n-0.004193\n-0.351682\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n3083\n73120000531\n7.630356e+08\n7.630356e+08\n2024-03-06T10:19:13Z\n44.224658\n-72.054978\nConnecticut River\n132.4360\n0.33872\n0.32654\n-1.000000e+12\n-1.000000e+12\n0.000345\n0.000050\n0.000050\n0.000516\n-1.000000e+12\n0.004668\n148.281475\n0.719702\n-1.000000e+12\n-1.000000e+12\n1652452.4\n8020.3815\n704909.5\n8020.4\n1652452.4\n-1.000000e+12\n-1.000000e+12\n15.2661\n97.873676\n5.65395\n-21404.77344\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n524302\n0.573416\n1\n-999\n0\n39\n0.696429\n1\n-28.334730\n1.409300e-06\n-0.122787\n-0.012621\n-0.013141\n0.004544\n-2.275936\n-0.138596\n-0.002577\n0.981060\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n3691\n73120000531\n7.648383e+08\n7.648383e+08\n2024-03-27T07:04:16Z\n44.224658\n-72.054978\nConnecticut River\n132.4095\n0.19755\n0.17586\n-1.000000e+12\n-1.000000e+12\n0.001078\n0.000065\n0.000065\n0.000907\n-1.000000e+12\n0.001526\n167.129932\n0.874109\n-1.000000e+12\n-1.000000e+12\n1862500.1\n9741.0965\n987509.4\n9741.1\n1862500.1\n-1.000000e+12\n-1.000000e+12\n8.0515\n124.612257\n-0.06486\n-21380.69141\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n524302\n0.469794\n1\n-999\n0\n44\n0.785714\n1\n-28.335330\n1.471800e-06\n0.020488\n0.006227\n0.005686\n0.003217\n-2.283199\n-0.149064\n-0.003512\n0.247772\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...", + "text": "2. River longitudinal profile: trace reaches downstream of given starting reach using rch_id_dn field\nWARNING: This works as long as the data is exhaustive (no missing SWORD reaches)\n\nFirst, let’s set up a dictionary relating all reaches in the dataset to their downstream neighbor\nNote: rch_dn_dict[rch_id] gives a list of all the reaches directly downstream from rch_id\n\n# Format rch_id_dn for dictionary. Rch_id_dn allows for multiple downstream reaches to be stored\n# Also removes spaces in attribute field\nrch_id_dn = [[x.strip() for x in SWOT_HR_df.rch_id_dn[j].split(',')] for j in range(0,len(SWOT_HR_df.rch_id_dn))]\n\n# Filter upstream reach ids to remove 'no_data'\nrch_id_dn_filter = [[x for x in dn_id if x.isnumeric()] for dn_id in rch_id_dn]\n\n# Create lookup dictionary for river network topology: Downstream\nrch_dn_dict = {SWOT_HR_df.reach_id[i]: rch_id_dn_filter[i] for i in range(len(SWOT_HR_df))}\n\n\n\nThen, starting from a given reach, let’s trace all connected downstream reaches\n\n# Enter reach_id from which we will trace downstream (e.g. headwaters of the Connecticut River)\nrch_dn_st = {\"Connecticut River\": '73120000691',\n \"Rhine\": '23267000651'\n }\n\n# Initialize list to store downstream reaches, including starting reach\nrch_dn_list = [rch_dn_st[river]]\n# Retrieve first downstream id of starting reach and add to list\nrch_dn_next = rch_dn_dict[rch_dn_st[river]][0]\n\n# Trace next downstream reach until we hit the outlet (or here the last reach on file)\nwhile len(rch_dn_next) != 0:\n # Add reach to list if value exists\n if len(rch_dn_next) != 0:\n rch_dn_list.append(rch_dn_next)\n # Recursively retrieve first downstream id of next reach\n # Catch error if reach isn't in downloaded data\n try:\n rch_dn_next = rch_dn_dict[rch_dn_next][0]\n except:\n break\n\n\n\nFinally, we filtered our downloaded data by the traced reaches to create a plot\n\n# Filter downloaded data by downstream traced reaches\nSWOT_dn_trace = SWOT_HR_df[SWOT_HR_df.reach_id.isin(rch_dn_list)]\n\n# Remove reaches from rch_dn_list that are not present in SWOT data\nrch_dn_list = [rch for rch in rch_dn_list if rch in SWOT_HR_df.reach_id.values]\n\nSWOT_dn_trace[['reach_id','river_name','geometry']].explore('river_name', style_kwds=dict(weight=6))\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\n\nIt looks like the data was cut short!\nMust be an error in the SWORD Database. Let’s check by singling out the reach it left off on.\nIt looks like reach ‘73120000531’ at the time of this run (4/1/24) has ‘no_data’ in the rch_id_up and rch_id_dn fields when there should be values. To help out the SWORD database creators, we can report this discrepancy by clicking the Report Reach button at https://www.swordexplorer.com/. SWORD should be updated quarterly.\n\nSWOT_HR_df[SWOT_HR_df.reach_id == '73120000531']\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n866\n73120000531\n7.605090e+08\n7.605090e+08\n2024-02-06T04:29:59Z\n44.224658\n-72.054978\nConnecticut River\n154.0388\n1.46533\n1.46257\n-1.000000e+12\n-1.000000e+12\n-0.005891\n0.000053\n0.000053\n-0.006434\n-1.000000e+12\n0.896640\n1392.178327\n35.649174\n-1.000000e+12\n-1.000000e+12\n15211862.6\n389526.4859\n15095057.3\n389526.5\n15211862.6\n-1.000000e+12\n-1.000000e+12\n7.8523\n105.676909\n10.84167\n9765.19336\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n540686\n0.007679\n2\n-999\n0\n33\n0.589286\n0\n-28.335190\n9.845300e-07\n0.172423\n0.010426\n0.010006\n0.005676\n-2.282196\n-0.045801\n-0.003250\n0.121413\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n2477\n73120000531\n7.612328e+08\n7.612329e+08\n2024-02-14T13:34:08Z\n44.224658\n-72.054978\nConnecticut River\n128.0371\n0.32207\n0.30924\n-1.000000e+12\n-1.000000e+12\n0.000855\n0.000167\n0.000167\n0.000768\n-1.000000e+12\n0.006689\n236.948849\n1.282518\n-1.000000e+12\n-1.000000e+12\n2640563.8\n14292.4126\n2161135.3\n14292.4\n2640563.8\n-1.000000e+12\n-1.000000e+12\n8.2052\n54.052922\n0.21296\n-21062.49316\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8389049\n8389049\n1\n14\n0.181563\n2\n-999\n0\n44\n0.785714\n1\n-28.335581\n2.610410e-06\n-0.117483\n-0.005037\n-0.004920\n0.005339\n-2.264607\n-0.021861\n-0.006972\n0.192579\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n1825\n73120000531\n7.623117e+08\n7.623117e+08\n2024-02-27T01:15:04Z\n44.224658\n-72.054978\nConnecticut River\n128.0144\n1.19649\n1.19310\n-1.000000e+12\n-1.000000e+12\n0.001347\n0.000243\n0.000243\n0.001149\n-1.000000e+12\n0.059092\n140.618093\n1.530273\n-1.000000e+12\n-1.000000e+12\n1567051.5\n17053.4007\n929680.4\n17053.4\n1567051.5\n-1.000000e+12\n-1.000000e+12\n9.2751\n57.946006\n0.51076\n9967.06689\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n542734\n0.406733\n2\n-999\n0\n28\n0.500000\n0\n-28.334133\n7.037000e-07\n-0.090734\n-0.008116\n-0.007447\n0.004975\n-2.278251\n-0.039789\n-0.004193\n-0.351682\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n3083\n73120000531\n7.630356e+08\n7.630356e+08\n2024-03-06T10:19:13Z\n44.224658\n-72.054978\nConnecticut River\n132.4360\n0.33872\n0.32654\n-1.000000e+12\n-1.000000e+12\n0.000345\n0.000050\n0.000050\n0.000516\n-1.000000e+12\n0.004668\n148.281475\n0.719702\n-1.000000e+12\n-1.000000e+12\n1652452.4\n8020.3815\n704909.5\n8020.4\n1652452.4\n-1.000000e+12\n-1.000000e+12\n15.2661\n97.873676\n5.65395\n-21404.77344\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n524302\n0.573416\n1\n-999\n0\n39\n0.696429\n1\n-28.334730\n1.409300e-06\n-0.122787\n-0.012621\n-0.013141\n0.004544\n-2.275936\n-0.138596\n-0.002577\n0.981060\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...\n\n\n3691\n73120000531\n7.648383e+08\n7.648383e+08\n2024-03-27T07:04:16Z\n44.224658\n-72.054978\nConnecticut River\n132.4095\n0.19755\n0.17586\n-1.000000e+12\n-1.000000e+12\n0.001078\n0.000065\n0.000065\n0.000907\n-1.000000e+12\n0.001526\n167.129932\n0.874109\n-1.000000e+12\n-1.000000e+12\n1862500.1\n9741.0965\n987509.4\n9741.1\n1862500.1\n-1.000000e+12\n-1.000000e+12\n8.0515\n124.612257\n-0.06486\n-21380.69141\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n524302\n0.469794\n1\n-999\n0\n44\n0.785714\n1\n-28.335330\n1.471800e-06\n0.020488\n0.006227\n0.005686\n0.003217\n-2.283199\n-0.149064\n-0.003512\n0.247772\n0\n0\nno_data, no_data, no_data, no_data\nno_data, no_data, no_data, no_data\n126.700005\n3.094431\n127.0\n3164.993\n56\n479601.479\n11140.899379\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.05657 44.17983, -72.05663 44.1...", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4763,7 +4763,7 @@ "href": "notebooks/DataStories/SWOTHR_Science_Application.html#watershed-analysis-trace-reaches-upstream-of-starting-reach-using-rch_id_up-field", "title": "SWOT Hydrology Science Application Tutorial on the Cloud", "section": "3. Watershed analysis: trace reaches upstream of starting reach using rch_id_up field", - "text": "3. Watershed analysis: trace reaches upstream of starting reach using rch_id_up field\nWARNING: This works as long as the data is exhaustive (no missing SWORD reaches)\n\nFirst, let’s set up a dictionary relating all reaches in the dataset to their upstream neighbor\nNote: rch_up_dict[rch_id] gives a list of all the reaches directly upstream from rch_id\n\n# Format rch_id_up for dictionary. Rch_id_up allows for multiple upstream reaches to be stored\n# Also removes spaces in attribute field\nrch_id_up = [[x.strip() for x in SWOT_HR_df.rch_id_up[j].split(',')] for j in range(0,len(SWOT_HR_df.rch_id_up))]\n\n# Filter upstream reach ids to remove 'no_data'\nrch_id_up_fil = [[x for x in ups_id if x.isnumeric()] for ups_id in rch_id_up]\n\n# Create lookup dictionary for river network topology: Upstream\nrch_up_dict = {SWOT_HR_df.reach_id[i]: rch_id_up_fil[i] for i in range(len(SWOT_HR_df))}\n\n\n\nThen, starting from a given reach, let’s trace all connected upstream reaches\nThis adds a bit of complexity, as we need to keep track of multiple branches upstream of the starting reach.\n\n# Enter reach_id from which we will trace upstream (e.g. outlet of the Connecticut River)\nrch_up_st = {\"Connecticut River\": '73120000021',\n \"Rhine\": '23265000051'\n }\n\n# Initialize list to store traced upstream reaches, including starting reach\nrch_up_list = [rch_up_st[river]]\n# Retrieve ids of reaches upstream of starting reach and add to list\nrch_up_next = rch_up_dict[rch_up_st[river]]\n# For upstream tracing, we need to set a list of next upstream ids to start while loop\nrch_next_id = rch_up_next\n\n# Loop until no more reaches to trace\nwhile len(rch_next_id) != 0:\n # Initialize list to store next upstream ids\n rch_next_id = []\n # Loop through next upstream ids for given reach\n for rch_up_sel in rch_up_next:\n # Get values of existing upstream ids of rch_up_next reaches\n # If reach isn't in SWOT data (usually ghost reaches), continue to next reach\n try:\n rch_next_id = rch_next_id + rch_up_dict[rch_up_sel]\n except:\n continue\n # Append id to list\n rch_up_list.append(rch_up_sel)\n # If reaches exist, add to list for next cycle of tracing\n if len(rch_next_id) != 0:\n rch_up_next = rch_next_id\n\n\n\nFinally, we filtered our downloaded data by the traced reaches to create a plot\n\n# Filter downloaded data by upstream traced reaches\nSWOT_up_trace = SWOT_HR_df[SWOT_HR_df.reach_id.isin(rch_up_list)]\n\n# Remove reaches from rch_up_list that are not present in SWOT data\nrch_up_list = [rch for rch in rch_up_list if rch in SWOT_HR_df.reach_id.values]\n\nSWOT_up_trace[['reach_id','river_name','geometry']].explore('river_name', style_kwds=dict(weight=6))\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\n\nIt looks like the data was cut short!\nMust be an error in the SWORD Database. Let’s check by singling out the reach it left off on.\nIt looks like reach ‘73120000131’ at the time of this run (4/1/24) has ‘no_data’ in the rch_id_up field when there should be values. To help out the SWORD database creators, we can report this discrepancy by clicking the Report Reach button at https://www.swordexplorer.com/. SWORD should be updated quarterly.\n\nSWOT_HR_df[SWOT_HR_df.reach_id == '73120000131']\n\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n4289\n73120000131\n7.603747e+08\n7.603748e+08\n2024-02-04T15:12:22Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n17.8123\n1.75473\n1.75242\n-1.000000e+12\n-1.000000e+12\n0.000037\n0.000070\n0.000069\n-0.001077\n-1.000000e+12\n0.149820\n269.926514\n0.917276\n-1.000000e+12\n-1.000000e+12\n4913349.6\n16696.7556\n4020726.7\n16696.8\n4913349.6\n-1.000000e+12\n-1.000000e+12\n7.4382\n77.889768\n3.07849\n-17744.08203\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651194\n8651194\n2\n524298\n0.181673\n1\n-999\n0\n63\n0.692308\n1\n-29.751362\n0.000009\n-0.086159\n-0.000891\n-0.001675\n0.005661\n-2.308405\n-0.038409\n-0.007717\n-0.119022\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n826\n73120000131\n7.605090e+08\n7.605090e+08\n2024-02-06T04:29:28Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n12.6637\n0.19421\n0.17210\n-1.000000e+12\n-1.000000e+12\n0.000114\n0.000017\n0.000017\n0.000086\n-1.000000e+12\n0.001538\n287.245279\n0.797441\n-1.000000e+12\n-1.000000e+12\n5228595.3\n14515.4526\n4606508.3\n14515.5\n5228595.3\n-1.000000e+12\n-1.000000e+12\n9.1697\n44.128698\n1.25673\n22611.02344\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n524302\n0.118978\n1\n-999\n0\n79\n0.868132\n0\n-29.758129\n0.000009\n0.174483\n0.010891\n0.010403\n0.005627\n-2.314298\n-0.038225\n-0.003412\n0.275083\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n5005\n73120000131\n7.621774e+08\n7.621775e+08\n2024-02-25T11:57:28Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n18.6698\n0.71056\n0.70483\n-1.000000e+12\n-1.000000e+12\n-0.000197\n0.000013\n0.000013\n-0.000449\n-1.000000e+12\n0.016066\n176.825294\n0.749504\n-1.000000e+12\n-1.000000e+12\n3180801.8\n13482.3639\n2471691.4\n13482.4\n3180801.8\n-1.000000e+12\n-1.000000e+12\n14.1412\n61.492919\n25.47558\n-18295.04688\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n524298\n0.222934\n1\n-999\n0\n57\n0.626374\n1\n-29.754559\n0.000009\n-0.107900\n-0.010993\n-0.011123\n0.004992\n-2.318859\n-0.020506\n-0.004491\n0.533674\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n1785\n73120000131\n7.623117e+08\n7.623117e+08\n2024-02-27T01:14:33Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n14.2290\n56.55282\n56.55275\n-1.000000e+12\n-1.000000e+12\n0.000227\n0.000755\n0.000755\n0.000221\n-1.000000e+12\n105.629895\n174.128982\n0.481409\n-1.000000e+12\n-1.000000e+12\n3020238.5\n8349.9574\n1643032.9\n8350.0\n3020238.5\n-1.000000e+12\n-1.000000e+12\n3.7414\n59.205995\n-254.38090\n22761.77734\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651194\n8651194\n2\n559118\n0.455992\n1\n-999\n1\n40\n0.439560\n0\n-29.787819\n0.000010\n-0.097246\n-0.010257\n-0.009368\n0.004914\n-2.311219\n-0.055498\n-0.004463\n-0.923738\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n5721\n73120000131\n7.639802e+08\n7.639802e+08\n2024-03-17T08:42:30Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n16.4579\n1.45118\n1.44838\n-1.000000e+12\n-1.000000e+12\n-0.000051\n0.000020\n0.000020\n-0.000040\n-1.000000e+12\n0.101899\n253.869874\n0.921815\n-1.000000e+12\n-1.000000e+12\n4365151.0\n15850.0907\n3943427.8\n15850.1\n4365151.0\n-1.000000e+12\n-1.000000e+12\n8.2200\n61.505402\n34.55020\n-17854.23730\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n524298\n0.096611\n1\n-999\n0\n56\n0.615385\n1\n-29.751930\n0.000009\n-0.081659\n-0.008595\n-0.009871\n0.003843\n-2.277789\n-0.089168\n-0.003424\n0.688992\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...", + "text": "3. Watershed analysis: trace reaches upstream of starting reach using rch_id_up field\nWARNING: This works as long as the data is exhaustive (no missing SWORD reaches)\n\nFirst, let’s set up a dictionary relating all reaches in the dataset to their upstream neighbor\nNote: rch_up_dict[rch_id] gives a list of all the reaches directly upstream from rch_id\n\n# Format rch_id_up for dictionary. Rch_id_up allows for multiple upstream reaches to be stored\n# Also removes spaces in attribute field\nrch_id_up = [[x.strip() for x in SWOT_HR_df.rch_id_up[j].split(',')] for j in range(0,len(SWOT_HR_df.rch_id_up))]\n\n# Filter upstream reach ids to remove 'no_data'\nrch_id_up_fil = [[x for x in ups_id if x.isnumeric()] for ups_id in rch_id_up]\n\n# Create lookup dictionary for river network topology: Upstream\nrch_up_dict = {SWOT_HR_df.reach_id[i]: rch_id_up_fil[i] for i in range(len(SWOT_HR_df))}\n\n\n\nThen, starting from a given reach, let’s trace all connected upstream reaches\nThis adds a bit of complexity, as we need to keep track of multiple branches upstream of the starting reach.\n\n# Enter reach_id from which we will trace upstream (e.g. outlet of the Connecticut River)\nrch_up_st = {\"Connecticut River\": '73120000021',\n \"Rhine\": '23265000051'\n }\n\n# Initialize list to store traced upstream reaches, including starting reach\nrch_up_list = [rch_up_st[river]]\n# Retrieve ids of reaches upstream of starting reach and add to list\nrch_up_next = rch_up_dict[rch_up_st[river]]\n# For upstream tracing, we need to set a list of next upstream ids to start while loop\nrch_next_id = rch_up_next\n\n# Loop until no more reaches to trace\nwhile len(rch_next_id) != 0:\n # Initialize list to store next upstream ids\n rch_next_id = []\n # Loop through next upstream ids for given reach\n for rch_up_sel in rch_up_next:\n # Get values of existing upstream ids of rch_up_next reaches\n # If reach isn't in SWOT data (usually ghost reaches), continue to next reach\n try:\n rch_next_id = rch_next_id + rch_up_dict[rch_up_sel]\n except:\n continue\n # Append id to list\n rch_up_list.append(rch_up_sel)\n # If reaches exist, add to list for next cycle of tracing\n if len(rch_next_id) != 0:\n rch_up_next = rch_next_id\n\n\n\nFinally, we filtered our downloaded data by the traced reaches to create a plot\n\n# Filter downloaded data by upstream traced reaches\nSWOT_up_trace = SWOT_HR_df[SWOT_HR_df.reach_id.isin(rch_up_list)]\n\n# Remove reaches from rch_up_list that are not present in SWOT data\nrch_up_list = [rch for rch in rch_up_list if rch in SWOT_HR_df.reach_id.values]\n\nSWOT_up_trace[['reach_id','river_name','geometry']].explore('river_name', style_kwds=dict(weight=6))\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\n\nIt looks like the data was cut short!\nMust be an error in the SWORD Database. Let’s check by singling out the reach it left off on.\nIt looks like reach ‘73120000131’ at the time of this run (4/1/24) has ‘no_data’ in the rch_id_up field when there should be values. To help out the SWORD database creators, we can report this discrepancy by clicking the Report Reach button at https://www.swordexplorer.com/. SWORD should be updated quarterly.\n\nSWOT_HR_df[SWOT_HR_df.reach_id == '73120000131']\n\n\n\n\n\n\n\n\nreach_id\ntime\ntime_tai\ntime_str\np_lat\np_lon\nriver_name\nwse\nwse_u\nwse_r_u\nwse_c\nwse_c_u\nslope\nslope_u\nslope_r_u\nslope2\nslope2_u\nslope2_r_u\nwidth\nwidth_u\nwidth_c\nwidth_c_u\narea_total\narea_tot_u\narea_detct\narea_det_u\narea_wse\nd_x_area\nd_x_area_u\nlayovr_val\nnode_dist\nloc_offset\nxtrk_dist\ndschg_c\ndschg_c_u\ndschg_csf\ndschg_c_q\ndschg_gc\ndschg_gc_u\ndschg_gcsf\ndschg_gc_q\ndschg_m\ndschg_m_u\ndschg_msf\ndschg_m_q\ndschg_gm\ndschg_gm_u\ndschg_gmsf\ndschg_gm_q\ndschg_b\ndschg_b_u\ndschg_bsf\ndschg_b_q\ndschg_gb\ndschg_gb_u\ndschg_gbsf\ndschg_gb_q\ndschg_h\ndschg_h_u\ndschg_hsf\ndschg_h_q\ndschg_gh\ndschg_gh_u\ndschg_ghsf\ndschg_gh_q\ndschg_o\ndschg_o_u\ndschg_osf\ndschg_o_q\ndschg_go\ndschg_go_u\ndschg_gosf\ndschg_go_q\ndschg_s\ndschg_s_u\ndschg_ssf\ndschg_s_q\ndschg_gs\ndschg_gs_u\ndschg_gssf\ndschg_gs_q\ndschg_i\ndschg_i_u\ndschg_isf\ndschg_i_q\ndschg_gi\ndschg_gi_u\ndschg_gisf\ndschg_gi_q\ndschg_q_b\ndschg_gq_b\nreach_q\nreach_q_b\ndark_frac\nice_clim_f\nice_dyn_f\npartial_f\nn_good_nod\nobs_frac_n\nxovr_cal_q\ngeoid_hght\ngeoid_slop\nsolid_tide\nload_tidef\nload_tideg\npole_tide\ndry_trop_c\nwet_trop_c\niono_c\nxovr_cal_c\nn_reach_up\nn_reach_dn\nrch_id_up\nrch_id_dn\np_wse\np_wse_var\np_width\np_wid_var\np_n_nodes\np_dist_out\np_length\np_maf\np_dam_id\np_n_ch_max\np_n_ch_mod\np_low_slp\ngeometry\n\n\n\n\n4289\n73120000131\n7.603747e+08\n7.603748e+08\n2024-02-04T15:12:22Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n17.8123\n1.75473\n1.75242\n-1.000000e+12\n-1.000000e+12\n0.000037\n0.000070\n0.000069\n-0.001077\n-1.000000e+12\n0.149820\n269.926514\n0.917276\n-1.000000e+12\n-1.000000e+12\n4913349.6\n16696.7556\n4020726.7\n16696.8\n4913349.6\n-1.000000e+12\n-1.000000e+12\n7.4382\n77.889768\n3.07849\n-17744.08203\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651194\n8651194\n2\n524298\n0.181673\n1\n-999\n0\n63\n0.692308\n1\n-29.751362\n0.000009\n-0.086159\n-0.000891\n-0.001675\n0.005661\n-2.308405\n-0.038409\n-0.007717\n-0.119022\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n826\n73120000131\n7.605090e+08\n7.605090e+08\n2024-02-06T04:29:28Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n12.6637\n0.19421\n0.17210\n-1.000000e+12\n-1.000000e+12\n0.000114\n0.000017\n0.000017\n0.000086\n-1.000000e+12\n0.001538\n287.245279\n0.797441\n-1.000000e+12\n-1.000000e+12\n5228595.3\n14515.4526\n4606508.3\n14515.5\n5228595.3\n-1.000000e+12\n-1.000000e+12\n9.1697\n44.128698\n1.25673\n22611.02344\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651192\n8651192\n2\n524302\n0.118978\n1\n-999\n0\n79\n0.868132\n0\n-29.758129\n0.000009\n0.174483\n0.010891\n0.010403\n0.005627\n-2.314298\n-0.038225\n-0.003412\n0.275083\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n5005\n73120000131\n7.621774e+08\n7.621775e+08\n2024-02-25T11:57:28Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n18.6698\n0.71056\n0.70483\n-1.000000e+12\n-1.000000e+12\n-0.000197\n0.000013\n0.000013\n-0.000449\n-1.000000e+12\n0.016066\n176.825294\n0.749504\n-1.000000e+12\n-1.000000e+12\n3180801.8\n13482.3639\n2471691.4\n13482.4\n3180801.8\n-1.000000e+12\n-1.000000e+12\n14.1412\n61.492919\n25.47558\n-18295.04688\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n524298\n0.222934\n1\n-999\n0\n57\n0.626374\n1\n-29.754559\n0.000009\n-0.107900\n-0.010993\n-0.011123\n0.004992\n-2.318859\n-0.020506\n-0.004491\n0.533674\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n1785\n73120000131\n7.623117e+08\n7.623117e+08\n2024-02-27T01:14:33Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n14.2290\n56.55282\n56.55275\n-1.000000e+12\n-1.000000e+12\n0.000227\n0.000755\n0.000755\n0.000221\n-1.000000e+12\n105.629895\n174.128982\n0.481409\n-1.000000e+12\n-1.000000e+12\n3020238.5\n8349.9574\n1643032.9\n8350.0\n3020238.5\n-1.000000e+12\n-1.000000e+12\n3.7414\n59.205995\n-254.38090\n22761.77734\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n8651194\n8651194\n2\n559118\n0.455992\n1\n-999\n1\n40\n0.439560\n0\n-29.787819\n0.000010\n-0.097246\n-0.010257\n-0.009368\n0.004914\n-2.311219\n-0.055498\n-0.004463\n-0.923738\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...\n\n\n5721\n73120000131\n7.639802e+08\n7.639802e+08\n2024-03-17T08:42:30Z\n42.150023\n-72.611327\nConnecticut River; Westfield River\n16.4579\n1.45118\n1.44838\n-1.000000e+12\n-1.000000e+12\n-0.000051\n0.000020\n0.000020\n-0.000040\n-1.000000e+12\n0.101899\n253.869874\n0.921815\n-1.000000e+12\n-1.000000e+12\n4365151.0\n15850.0907\n3943427.8\n15850.1\n4365151.0\n-1.000000e+12\n-1.000000e+12\n8.2200\n61.505402\n34.55020\n-17854.23730\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n-1.000000e+12\n-1.000000e+12\n-1.000000e+12\n-999\n25428408\n25428408\n2\n524298\n0.096611\n1\n-999\n0\n56\n0.615385\n1\n-29.751930\n0.000009\n-0.081659\n-0.008595\n-0.009871\n0.003843\n-2.277789\n-0.089168\n-0.003424\n0.688992\n0\n1\nno_data, no_data, no_data, no_data\n73120000121, no_data, no_data, no_data\n11.400001\n17.519935\n283.0\n3330.789\n91\n151626.309\n18201.09844\n-1.000000e+12\n0\n2\n1\n0\nLINESTRING (-72.58355 42.08302, -72.58318 42.0...", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4789,7 +4789,7 @@ "href": "notebooks/DataStories/SWOTHR_Science_Application.html#supplemental", "title": "SWOT Hydrology Science Application Tutorial on the Cloud", "section": "Supplemental", - "text": "Supplemental\n\nWe can also map the upstream traced database\n\nSWOT_up_trace_time = SWOT_up_trace.set_index('reach_id').groupby(level=0) \\\n .apply(lambda df: df.reset_index(drop=True)) \\\n .unstack().sort_index(axis=1, level=1)\n\nSWOT_up_trace_time.columns = ['{}_{}'.format(x[0],dates[x[1]]) for x in SWOT_up_trace_time.columns]\n\nSWOT_up_trace_time = SWOT_up_trace_time.set_geometry(\"geometry_\"+date)\n\n#Set cleaner colorbar bounds for better visualization\nvmin = np.percentile([i for i in SWOT_up_trace_time[varstr+'_'+date] if i>0],5)\nvmax = np.percentile([i for i in SWOT_up_trace_time[varstr+'_'+date] if i>0],95)\n\n# Interactive map\nSWOT_up_trace_time.explore(varstr+'_'+date,\n vmin = vmin,\n vmax = vmax,\n cmap = \"Blues\", #\"Blues\",\n control_scale = True,\n tooltip = varstr+'_'+dates[0], # show \"varstr+'_'+dates[0]\" value in tooltip (on hover)\n popup = True, # show all values in popup (on click)\n tiles = \"CartoDB positron\", # use \"CartoDB positron\" tiles\n style_kwds=dict(weight=5)\n )\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\n\nHow to filter out raster data to reveal water bodies?\nWe can also search by spatial bounding box. Raster tiles make it easy to do this since their footprints in the metadata are smaller. If you want the tile number, you can find it in the kmz file.\n\n# Retrieve granules from all days to find the cycle corresponding to the desired date\nraster_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_Raster_100m_2.0', \n temporal = ('2024-01-25 00:00:00', '2024-03-29 23:59:59'), \n bounding_box = (-72.44, 42.27, -72.15, 42.54)) # Quabbin Reservoir in Massachusetts\n\nGranules found: 11\n\n\n\nDisplay details of accessed files\n\nprint([i for i in raster_results])\n\n[Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.42544746840993, 'SouthBoundingCoordinate': 41.952112658860564, 'EastBoundingCoordinate': -70.53315398295408, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 35, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-01-26T06:07:09.985Z', 'BeginningDateTime': '2024-01-26T06:06:48.882Z'}}\nSize(MB): 92.35498809814453\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_010_035_115F_20240126T060648_20240126T060709_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.96975463204575, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -72.07746114659037, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 298, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-04T15:12:41.048Z', 'BeginningDateTime': '2024-02-04T15:12:19.946Z'}}\nSize(MB): 71.12618827819824\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_010_298_040F_20240204T151219_20240204T151241_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.65832419541033, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -71.76603070995414, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 341, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-06T04:29:57.503Z', 'BeginningDateTime': '2024-02-06T04:29:36.398Z'}}\nSize(MB): 71.9098253250122\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_010_341_115F_20240206T042936_20240206T042957_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.7368779330462, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -70.84458444759079, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 576, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-14T13:34:58.030Z', 'BeginningDateTime': '2024-02-14T13:34:36.929Z'}}\nSize(MB): 83.17313957214355\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_010_576_040F_20240214T133436_20240214T133458_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.42544746840993, 'SouthBoundingCoordinate': 41.952112658860564, 'EastBoundingCoordinate': -70.53315398295408, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 35, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-16T02:52:14.795Z', 'BeginningDateTime': '2024-02-16T02:51:53.691Z'}}\nSize(MB): 88.53574657440186\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_011_035_115F_20240216T025153_20240216T025214_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.96975463204575, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -72.07746114659037, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 298, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-25T11:57:46.348Z', 'BeginningDateTime': '2024-02-25T11:57:25.248Z'}}\nSize(MB): 65.02922439575195\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_011_298_040F_20240225T115725_20240225T115746_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.65832419541033, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -71.76603070995414, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 341, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-27T01:15:02.918Z', 'BeginningDateTime': '2024-02-27T01:14:41.812Z'}}\nSize(MB): 60.877685546875\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_011_341_115F_20240227T011441_20240227T011502_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.7368779330462, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -70.84458444759079, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 576, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-06T10:20:02.252Z', 'BeginningDateTime': '2024-03-06T10:19:41.156Z'}}\nSize(MB): 89.60176181793213\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_011_576_040F_20240306T101941_20240306T102002_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.42544746840993, 'SouthBoundingCoordinate': 41.952112658860564, 'EastBoundingCoordinate': -70.53315398295408, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 12, 'Passes': [{'Pass': 35, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-07T23:37:18.702Z', 'BeginningDateTime': '2024-03-07T23:36:57.601Z'}}\nSize(MB): 99.20879173278809\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_012_035_115F_20240307T233657_20240307T233718_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.96975463204575, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -72.07746114659037, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 12, 'Passes': [{'Pass': 298, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-17T08:42:48.423Z', 'BeginningDateTime': '2024-03-17T08:42:27.323Z'}}\nSize(MB): 72.32065773010254\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_012_298_040F_20240317T084227_20240317T084248_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.7368779330462, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -70.84458444759079, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 12, 'Passes': [{'Pass': 576, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-27T07:05:05.812Z', 'BeginningDateTime': '2024-03-27T07:04:44.714Z'}}\nSize(MB): 89.06233215332031\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_012_576_040F_20240327T070444_20240327T070505_PIC0_01.nc']]\n\n\n\n\nSelect a single file for visualization\n\n\nOpen file using xarray\n\nds_raster = xr.open_mfdataset(earthaccess.open([raster_results[1]]), engine='h5netcdf')\nds_raster\n\nOpening 1 granules, approx size: 0.07 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (x: 1574, y: 1574)\nCoordinates:\n * x (x) float64 5.839e+05 5.84e+05 ... 7.412e+05\n * y (y) float64 4.645e+06 4.646e+06 ... 4.803e+06\nData variables: (12/39)\n crs object ...\n longitude (y, x) float64 dask.array<chunksize=(525, 525), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(525, 525), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(1574, 1574), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(787, 787), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2024-02-08T18:43:05Z : Creation\n platform: SWOT\n references: V1.2.1\n ... ...\n x_min: 583900.0\n x_max: 741200.0\n y_min: 4645400.0\n y_max: 4802700.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:x: 1574y: 1574Coordinates: (2)x(x)float645.839e+05 5.84e+05 ... 7.412e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([583900., 584000., 584100., ..., 741000., 741100., 741200.])y(y)float644.645e+06 4.646e+06 ... 4.803e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([4645400., 4645500., 4645600., ..., 4802500., 4802600., 4802700.])Data variables: (39)crs()object...long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 18Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-75.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 18N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-75],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32618\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 18N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-75],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32618\"]]comment :UTM zone coordinate reference system.[1 values with dtype=object]longitude(y, x)float64dask.array<chunksize=(525, 525), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(525, 525), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded dark_water_degraded low_coherence_water_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 1048576 2097152 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4114378918\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111233454\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111364519\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(525, 525), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(525, 525), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\nIndexes: (2)xPandasIndexPandasIndex(Float64Index([583900.0, 584000.0, 584100.0, 584200.0, 584300.0, 584400.0,\n 584500.0, 584600.0, 584700.0, 584800.0,\n ...\n 740300.0, 740400.0, 740500.0, 740600.0, 740700.0, 740800.0,\n 740900.0, 741000.0, 741100.0, 741200.0],\n dtype='float64', name='x', length=1574))yPandasIndexPandasIndex(Float64Index([4645400.0, 4645500.0, 4645600.0, 4645700.0, 4645800.0, 4645900.0,\n 4646000.0, 4646100.0, 4646200.0, 4646300.0,\n ...\n 4801800.0, 4801900.0, 4802000.0, 4802100.0, 4802200.0, 4802300.0,\n 4802400.0, 4802500.0, 4802600.0, 4802700.0],\n dtype='float64', name='y', length=1574))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2024-02-08T18:43:05Z : Creationplatform :SWOTreferences :V1.2.1reference_document :JPL D-56416 - Revision C - December 8, 2023contact :podaac@podaac.jpl.nasa.govcycle_number :10pass_number :298scene_number :40tile_numbers :[78 79 80 81 78 79 80 81]tile_names :298_078L, 298_079L, 298_080L, 298_081L, 298_078R, 298_079R, 298_080R, 298_081Rtile_polarizations :H, H, H, H, V, V, V, Vcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM18T_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.1.1time_granule_start :2024-02-04T15:12:19.946118Ztime_granule_end :2024-02-04T15:12:41.048879Ztime_coverage_start :2024-02-04T15:12:20.482977Ztime_coverage_end :2024-02-04T15:12:40.507776Zgeospatial_lon_min :-73.96975463204575geospatial_lon_max :-72.07746114659037geospatial_lat_min :41.95211265886055geospatial_lat_max :43.348708275316724left_first_longitude :-72.44263832068619left_first_latitude :43.348708275316724left_last_longitude :-72.07746114659037left_last_latitude :42.22719163055777right_first_longitude :-73.96975463204575right_first_latitude :43.066480708621924right_last_longitude :-73.57988117405536right_last_latitude :41.95211265886055xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_010_298_078L_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_079L_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_080L_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_081L_20240204T151239_20240204T151251_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_078R_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_079R_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_080R_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_081R_20240204T151239_20240204T151251_PIC0_01.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_010_298_078L_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_079L_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_080L_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_081L_20240204T151239_20240204T151251_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_078R_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_079R_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_080R_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_081R_20240204T151239_20240204T151251_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :18mgrs_latitude_band :Tx_min :583900.0x_max :741200.0y_min :4645400.0y_max :4802700.0institution :CNESproduct_version :01", + "text": "Supplemental\n\nWe can also map the upstream traced database\n\nSWOT_up_trace_time = SWOT_up_trace.set_index('reach_id').groupby(level=0) \\\n .apply(lambda df: df.reset_index(drop=True)) \\\n .unstack().sort_index(axis=1, level=1)\n\nSWOT_up_trace_time.columns = ['{}_{}'.format(x[0],dates[x[1]]) for x in SWOT_up_trace_time.columns]\n\nSWOT_up_trace_time = SWOT_up_trace_time.set_geometry(\"geometry_\"+date)\n\n#Set cleaner colorbar bounds for better visualization\nvmin = np.percentile([i for i in SWOT_up_trace_time[varstr+'_'+date] if i>0],5)\nvmax = np.percentile([i for i in SWOT_up_trace_time[varstr+'_'+date] if i>0],95)\n\n# Interactive map\nSWOT_up_trace_time.explore(varstr+'_'+date,\n vmin = vmin,\n vmax = vmax,\n cmap = \"Blues\", #\"Blues\",\n control_scale = True,\n tooltip = varstr+'_'+dates[0], # show \"varstr+'_'+dates[0]\" value in tooltip (on hover)\n popup = True, # show all values in popup (on click)\n tiles = \"CartoDB positron\", # use \"CartoDB positron\" tiles\n style_kwds=dict(weight=5)\n )\n\nMake this Notebook Trusted to load map: File -> Trust Notebook\n\n\n\n\nHow to filter out raster data to reveal water bodies?\nWe can also search by spatial bounding box. Raster tiles make it easy to do this since their footprints in the metadata are smaller. If you want the tile number, you can find it in the kmz file.\n\n# Retrieve granules from all days to find the cycle corresponding to the desired date\nraster_results = earthaccess.search_data(short_name = 'SWOT_L2_HR_Raster_100m_2.0', \n temporal = ('2024-01-25 00:00:00', '2024-03-29 23:59:59'), \n bounding_box = (-72.44, 42.27, -72.15, 42.54)) # Quabbin Reservoir in Massachusetts\n\nGranules found: 11\n\n\n\nDisplay details of accessed files\n\nprint([i for i in raster_results])\n\n[Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.42544746840993, 'SouthBoundingCoordinate': 41.952112658860564, 'EastBoundingCoordinate': -70.53315398295408, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 35, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-01-26T06:07:09.985Z', 'BeginningDateTime': '2024-01-26T06:06:48.882Z'}}\nSize(MB): 92.35498809814453\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_010_035_115F_20240126T060648_20240126T060709_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.96975463204575, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -72.07746114659037, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 298, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-04T15:12:41.048Z', 'BeginningDateTime': '2024-02-04T15:12:19.946Z'}}\nSize(MB): 71.12618827819824\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_010_298_040F_20240204T151219_20240204T151241_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.65832419541033, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -71.76603070995414, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 341, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-06T04:29:57.503Z', 'BeginningDateTime': '2024-02-06T04:29:36.398Z'}}\nSize(MB): 71.9098253250122\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_010_341_115F_20240206T042936_20240206T042957_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.7368779330462, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -70.84458444759079, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 10, 'Passes': [{'Pass': 576, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-14T13:34:58.030Z', 'BeginningDateTime': '2024-02-14T13:34:36.929Z'}}\nSize(MB): 83.17313957214355\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_010_576_040F_20240214T133436_20240214T133458_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.42544746840993, 'SouthBoundingCoordinate': 41.952112658860564, 'EastBoundingCoordinate': -70.53315398295408, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 35, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-16T02:52:14.795Z', 'BeginningDateTime': '2024-02-16T02:51:53.691Z'}}\nSize(MB): 88.53574657440186\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_011_035_115F_20240216T025153_20240216T025214_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.96975463204575, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -72.07746114659037, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 298, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-25T11:57:46.348Z', 'BeginningDateTime': '2024-02-25T11:57:25.248Z'}}\nSize(MB): 65.02922439575195\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_011_298_040F_20240225T115725_20240225T115746_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -71.76603070995414}, {'Latitude': 43.34870827531672, 'Longitude': -73.65832419541033}, {'Latitude': 41.95211265886055, 'Longitude': -73.65832419541033}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.65832419541033, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -71.76603070995414, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 341, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-02-27T01:15:02.918Z', 'BeginningDateTime': '2024-02-27T01:14:41.812Z'}}\nSize(MB): 60.877685546875\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_011_341_115F_20240227T011441_20240227T011502_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.7368779330462, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -70.84458444759079, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 11, 'Passes': [{'Pass': 576, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-06T10:20:02.252Z', 'BeginningDateTime': '2024-03-06T10:19:41.156Z'}}\nSize(MB): 89.60176181793213\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_011_576_040F_20240306T101941_20240306T102002_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -70.53315398295408}, {'Latitude': 43.348708275316724, 'Longitude': -72.42544746840993}, {'Latitude': 41.952112658860564, 'Longitude': -72.42544746840993}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.42544746840993, 'SouthBoundingCoordinate': 41.952112658860564, 'EastBoundingCoordinate': -70.53315398295408, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 12, 'Passes': [{'Pass': 35, 'Tiles': ['228L', '229L', '230L', '231L', '228R', '229R', '230R', '231R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-07T23:37:18.702Z', 'BeginningDateTime': '2024-03-07T23:36:57.601Z'}}\nSize(MB): 99.20879173278809\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_012_035_115F_20240307T233657_20240307T233718_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -72.07746114659037}, {'Latitude': 43.348708275316724, 'Longitude': -73.96975463204575}, {'Latitude': 41.95211265886055, 'Longitude': -73.96975463204575}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -73.96975463204575, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -72.07746114659037, 'NorthBoundingCoordinate': 43.348708275316724}]}, 'Track': {'Cycle': 12, 'Passes': [{'Pass': 298, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-17T08:42:48.423Z', 'BeginningDateTime': '2024-03-17T08:42:27.323Z'}}\nSize(MB): 72.32065773010254\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM18T_N_x_x_x_012_298_040F_20240317T084227_20240317T084248_PIC0_01.nc'], Collection: {'Version': '2.0', 'ShortName': 'SWOT_L2_HR_Raster_100m_2.0'}\nSpatial coverage: {'HorizontalSpatialDomain': {'Geometry': {'GPolygons': [{'Boundary': {'Points': [{'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -70.84458444759079}, {'Latitude': 43.34870827531672, 'Longitude': -72.7368779330462}, {'Latitude': 41.95211265886055, 'Longitude': -72.7368779330462}]}}], 'BoundingRectangles': [{'WestBoundingCoordinate': -72.7368779330462, 'SouthBoundingCoordinate': 41.95211265886055, 'EastBoundingCoordinate': -70.84458444759079, 'NorthBoundingCoordinate': 43.34870827531672}]}, 'Track': {'Cycle': 12, 'Passes': [{'Pass': 576, 'Tiles': ['078L', '079L', '080L', '081L', '078R', '079R', '080R', '081R']}]}}}\nTemporal coverage: {'RangeDateTime': {'EndingDateTime': '2024-03-27T07:05:05.812Z', 'BeginningDateTime': '2024-03-27T07:04:44.714Z'}}\nSize(MB): 89.06233215332031\nData: ['https://archive.swot.podaac.earthdata.nasa.gov/podaac-swot-ops-cumulus-protected/SWOT_L2_HR_Raster_2.0/SWOT_L2_HR_Raster_100m_UTM19T_N_x_x_x_012_576_040F_20240327T070444_20240327T070505_PIC0_01.nc']]\n\n\n\n\nSelect a single file for visualization\n\n\nOpen file using xarray\n\nds_raster = xr.open_mfdataset(earthaccess.open([raster_results[1]]), engine='h5netcdf')\nds_raster\n\nOpening 1 granules, approx size: 0.07 GB\nusing endpoint: https://archive.swot.podaac.earthdata.nasa.gov/s3credentials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (x: 1574, y: 1574)\nCoordinates:\n * x (x) float64 5.839e+05 5.84e+05 ... 7.412e+05\n * y (y) float64 4.645e+06 4.646e+06 ... 4.803e+06\nData variables: (12/39)\n crs object ...\n longitude (y, x) float64 dask.array<chunksize=(525, 525), meta=np.ndarray>\n latitude (y, x) float64 dask.array<chunksize=(525, 525), meta=np.ndarray>\n wse (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n wse_qual (y, x) float32 dask.array<chunksize=(1574, 1574), meta=np.ndarray>\n wse_qual_bitwise (y, x) float64 dask.array<chunksize=(787, 787), meta=np.ndarray>\n ... ...\n load_tide_fes (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n load_tide_got (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n pole_tide (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n model_dry_tropo_cor (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n model_wet_tropo_cor (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\n iono_cor_gim_ka (y, x) float32 dask.array<chunksize=(787, 787), meta=np.ndarray>\nAttributes: (12/49)\n Conventions: CF-1.7\n title: Level 2 KaRIn High Rate Raster Data Product\n source: Ka-band radar interferometer\n history: 2024-02-08T18:43:05Z : Creation\n platform: SWOT\n references: V1.2.1\n ... ...\n x_min: 583900.0\n x_max: 741200.0\n y_min: 4645400.0\n y_max: 4802700.0\n institution: CNES\n product_version: 01xarray.DatasetDimensions:x: 1574y: 1574Coordinates: (2)x(x)float645.839e+05 5.84e+05 ... 7.412e+05long_name :x coordinate of projectionstandard_name :projection_x_coordinateunits :mvalid_min :-10000000.0valid_max :10000000.0comment :UTM easting coordinate of the pixel.array([583900., 584000., 584100., ..., 741000., 741100., 741200.])y(y)float644.645e+06 4.646e+06 ... 4.803e+06long_name :y coordinate of projectionstandard_name :projection_y_coordinateunits :mvalid_min :-20000000.0valid_max :20000000.0comment :UTM northing coordinate of the pixel.array([4645400., 4645500., 4645600., ..., 4802500., 4802600., 4802700.])Data variables: (39)crs()object...long_name :CRS Definitiongrid_mapping_name :transverse_mercatorprojected_crs_name :WGS 84 / UTM zone 18Ngeographic_crs_name :WGS 84reference_ellipsoid_name :WGS 84horizontal_datum_name :WGS_1984prime_meridian_name :Greenwichfalse_easting :500000.0false_northing :0.0longitude_of_central_meridian :-75.0longitude_of_prime_meridian :0.0latitude_of_projection_origin :0.0scale_factor_at_central_meridian :0.9996semi_major_axis :6378137.0inverse_flattening :298.257223563crs_wkt :PROJCS[\"WGS 84 / UTM zone 18N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-75],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32618\"]]spatial_ref :PROJCS[\"WGS 84 / UTM zone 18N\",GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4326\"]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"latitude_of_origin\",0],PARAMETER[\"central_meridian\",-75],PARAMETER[\"scale_factor\",0.9996],PARAMETER[\"false_easting\",500000],PARAMETER[\"false_northing\",0],UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]],AXIS[\"Easting\",EAST],AXIS[\"Northing\",NORTH],AUTHORITY[\"EPSG\",\"32618\"]]comment :UTM zone coordinate reference system.[1 values with dtype=object]longitude(y, x)float64dask.array<chunksize=(525, 525), meta=np.ndarray>long_name :longitude (degrees East)standard_name :longitudegrid_mapping :crsunits :degrees_eastvalid_min :-180.0valid_max :180.0comment :Geodetic longitude [-180,180) (east of the Greenwich meridian) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nlatitude\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(525, 525), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlatitude (positive N, negative S)\n\nstandard_name :\n\nlatitude\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees_north\n\nvalid_min :\n\n-80.0\n\nvalid_max :\n\n80.0\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface elevation above geoid\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nquality_flag :\n\nwse_qual\n\nvalid_min :\n\n-1500.0\n\nvalid_max :\n\n15000.0\n\ncomment :\n\nWater surface elevation of the pixel above the geoid and after using models to subtract the effects of tides (solid_earth_tide, load_tide_fes, pole_tide).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface elevation quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface elevation\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded dark_water_degraded low_coherence_water_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 32 128 4096 8192 16384 262144 524288 1048576 2097152 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4114378918\n\ncomment :\n\nBitwise quality indicator for the water surface elevation quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwse_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface elevation\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water surface elevation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-2000000.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\nSurface area of the water pixels.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the water surface area and water fraction quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the water surface area\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nclassification_qual_suspect geolocation_qual_suspect water_fraction_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 2 4 8 32 128 256 4096 8192 16384 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111233454\n\ncomment :\n\nBitwise quality indicator for the water surface area and water fraction quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_area_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water surface area\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm^2\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n2000000000.0\n\ncomment :\n\n1-sigma uncertainty in the water surface area.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwater fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nwater_area_qual\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of the pixel that is water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nwater_frac_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in the water fraction\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in the water fraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nquality_flag :\n\nsig0_qual\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nNormalized radar cross section (sigma0) in real, linear units (not decibels). The value may be negative due to noise subtraction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_qual\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsummary quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\ngood suspect degraded bad\n\nflag_values :\n\n[0 1 2 3]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n3\n\ncomment :\n\nSummary quality indicator for the sigma0 quantities. A value of 0 indicates a nominal measurement, 1 indicates a suspect measurement, 2 indicates a degraded measurement, and 3 indicates a bad measurement.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_qual_bitwise\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nbitwise quality indicator for the sigma0\n\nstandard_name :\n\nstatus_flag\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nsig0_qual_suspect classification_qual_suspect geolocation_qual_suspect large_uncert_suspect bright_land low_coherence_water_suspect few_pixels far_range_suspect near_range_suspect sig0_qual_degraded classification_qual_degraded geolocation_qual_degraded value_bad outside_data_window no_pixels outside_scene_bounds inner_swath missing_karin_data\n\nflag_masks :\n\n[ 1 2 4 32 128 256 4096 8192 16384 131072 262144 524288 16777216 67108864 268435456 536870912 1073741824 2147483648]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n4111364519\n\ncomment :\n\nBitwise quality indicator for the sigma0 quantities. If this word is interpreted as an unsigned integer, a value of 0 indicates good data, positive values less than 32768 represent suspect data, values greater than or equal to 32768 but less than 8388608 represent degraded data, and values greater than or equal to 8388608 represent bad data.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_uncert\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nuncertainty in sigma0\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\n1-sigma uncertainty in sigma0. The value is provided in linear units. This value is a one-sigma additive (not multiplicative) uncertainty term, which can be added to or subtracted from sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ninc\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nincidence angle\n\ngrid_mapping :\n\ncrs\n\nunits :\n\ndegrees\n\nvalid_min :\n\n0.0\n\nvalid_max :\n\n90.0\n\ncomment :\n\nIncidence angle.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ncross_track\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\napproximate cross-track location\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-75000.0\n\nvalid_max :\n\n75000.0\n\ncomment :\n\nApproximate cross-track location of the pixel.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nillumination_time\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(525, 525), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (UTC)\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n37.0\n\nleap_second :\n\n0000-00-00T00:00:00Z\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nillumination_time_tai\n\n\n(y, x)\n\n\ndatetime64[ns]\n\n\ndask.array<chunksize=(525, 525), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntime of illumination of each pixel (TAI)\n\nstandard_name :\n\ntime\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [illumination_time:tai_utc_difference].\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n2.10 MiB\n\n\nShape\n(1574, 1574)\n(525, 525)\n\n\nDask graph\n9 chunks in 2 graph layers\n\n\nData type\ndatetime64[ns] numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_wse_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface elevation pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface elevation aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_water_area_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of water surface area pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in water surface area and water fraction aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_sig0_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of sigma0 pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in sigma0 aggregation.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nn_other_pix\n\n\n(y, x)\n\n\nfloat64\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nnumber of other pixels\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n0\n\nvalid_max :\n\n999999\n\ncomment :\n\nNumber of pixel cloud samples used in aggregation of quantities not related to water surface elevation, water surface area, water fraction or sigma0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n18.90 MiB\n4.73 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ndark_frac\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nfractional area of dark water\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nl\n\nvalid_min :\n\n-1000.0\n\nvalid_max :\n\n10000.0\n\ncomment :\n\nFraction of pixel water surface area covered by dark water.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nice_clim_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nclimatological ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover uncertain_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nClimatological ice cover flag indicating whether the pixel is ice-covered on the day of the observation based on external climatological information (not the SWOT measurement). Values of 0, 1, and 2 indicate that the pixel is likely not ice covered, may or may not be partially or fully ice covered, and likely fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nice_dyn_flag\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(1574, 1574), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndynamic ice cover flag\n\nstandard_name :\n\nstatus_flag\n\nsource :\n\nUNC\n\ngrid_mapping :\n\ncrs\n\nflag_meanings :\n\nno_ice_cover partial_ice_cover full_ice_cover\n\nflag_values :\n\n[0 1 2]\n\nvalid_min :\n\n0\n\nvalid_max :\n\n2\n\ncomment :\n\nDynamic ice cover flag indicating whether the surface is ice-covered on the day of the observation based on analysis of external satellite optical data. Values of 0, 1, and 2 indicate that the pixel is not ice covered, partially ice covered, and fully ice covered, respectively.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n9.45 MiB\n\n\nShape\n(1574, 1574)\n(1574, 1574)\n\n\nDask graph\n1 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nlayover_impact\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nlayover impact\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-999999.0\n\nvalid_max :\n\n999999.0\n\ncomment :\n\nEstimate of the water surface elevation error caused by layover.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\n1\n\nvalid_min :\n\n1.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-10.0\n\nvalid_max :\n\n10.0\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. The correction is applied before geolocation but reported as an equivalent height correction.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\ngeoid\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeoid height\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-150.0\n\nvalid_max :\n\n150.0\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n1.0\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\ninstitution :\n\nLEGOS/CNES\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\ninstitution :\n\nGSFC\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth’s crust. This value is reported for reference but is not applied to the reported height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\npole_tide\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.2\n\nvalid_max :\n\n0.2\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth’s crust).\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-3.0\n\nvalid_max :\n\n-1.5\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nwet troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\ninstitution :\n\nECMWF\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-1.0\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(y, x)\n\n\nfloat32\n\n\ndask.array<chunksize=(787, 787), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\ninstitution :\n\nJPL\n\ngrid_mapping :\n\ncrs\n\nunits :\n\nm\n\nvalid_min :\n\n-0.5\n\nvalid_max :\n\n0.0\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported water surface elevation, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported water surface elevation results in the uncorrected pixel height.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n9.45 MiB\n2.36 MiB\n\n\nShape\n(1574, 1574)\n(787, 787)\n\n\nDask graph\n4 chunks in 2 graph layers\n\n\nData type\nfloat32 numpy.ndarray\n\n\n\n\n 1574 1574\n\n\n\n\n\nIndexes: (2)xPandasIndexPandasIndex(Float64Index([583900.0, 584000.0, 584100.0, 584200.0, 584300.0, 584400.0,\n 584500.0, 584600.0, 584700.0, 584800.0,\n ...\n 740300.0, 740400.0, 740500.0, 740600.0, 740700.0, 740800.0,\n 740900.0, 741000.0, 741100.0, 741200.0],\n dtype='float64', name='x', length=1574))yPandasIndexPandasIndex(Float64Index([4645400.0, 4645500.0, 4645600.0, 4645700.0, 4645800.0, 4645900.0,\n 4646000.0, 4646100.0, 4646200.0, 4646300.0,\n ...\n 4801800.0, 4801900.0, 4802000.0, 4802100.0, 4802200.0, 4802300.0,\n 4802400.0, 4802500.0, 4802600.0, 4802700.0],\n dtype='float64', name='y', length=1574))Attributes: (49)Conventions :CF-1.7title :Level 2 KaRIn High Rate Raster Data Productsource :Ka-band radar interferometerhistory :2024-02-08T18:43:05Z : Creationplatform :SWOTreferences :V1.2.1reference_document :JPL D-56416 - Revision C - December 8, 2023contact :podaac@podaac.jpl.nasa.govcycle_number :10pass_number :298scene_number :40tile_numbers :[78 79 80 81 78 79 80 81]tile_names :298_078L, 298_079L, 298_080L, 298_081L, 298_078R, 298_079R, 298_080R, 298_081Rtile_polarizations :H, H, H, H, V, V, V, Vcoordinate_reference_system :Universal Transverse Mercatorresolution :100.0short_name :L2_HR_Rasterdescriptor_string :100m_UTM18T_N_x_x_xcrid :PIC0pge_name :PGE_L2_HR_RASTERpge_version :5.1.1time_granule_start :2024-02-04T15:12:19.946118Ztime_granule_end :2024-02-04T15:12:41.048879Ztime_coverage_start :2024-02-04T15:12:20.482977Ztime_coverage_end :2024-02-04T15:12:40.507776Zgeospatial_lon_min :-73.96975463204575geospatial_lon_max :-72.07746114659037geospatial_lat_min :41.95211265886055geospatial_lat_max :43.348708275316724left_first_longitude :-72.44263832068619left_first_latitude :43.348708275316724left_last_longitude :-72.07746114659037left_last_latitude :42.22719163055777right_first_longitude :-73.96975463204575right_first_latitude :43.066480708621924right_last_longitude :-73.57988117405536right_last_latitude :41.95211265886055xref_l2_hr_pixc_files :SWOT_L2_HR_PIXC_010_298_078L_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_079L_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_080L_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_081L_20240204T151239_20240204T151251_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_078R_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_079R_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_080R_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXC_010_298_081R_20240204T151239_20240204T151251_PIC0_01.ncxref_l2_hr_pixcvec_files :SWOT_L2_HR_PIXCVec_010_298_078L_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_079L_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_080L_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_081L_20240204T151239_20240204T151251_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_078R_20240204T151209_20240204T151221_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_079R_20240204T151219_20240204T151231_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_080R_20240204T151229_20240204T151241_PIC0_01.nc, SWOT_L2_HR_PIXCVec_010_298_081R_20240204T151239_20240204T151251_PIC0_01.ncxref_param_l2_hr_raster_file :SWOT_Param_L2_HR_Raster_20000101T000000_21000101T000000_20230817T100000_v302.rdfxref_reforbittrack_files :SWOT_RefOrbitTrackTileBoundary_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass1_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txt, SWOT_RefOrbitTrack125mPass2_Nom_20000101T000000_21000101T000000_20200617T193054_v101.txtutm_zone_num :18mgrs_latitude_band :Tx_min :583900.0x_max :741200.0y_min :4645400.0y_max :4802700.0institution :CNESproduct_version :01", "crumbs": [ "Tutorials", "Dataset Specific", @@ -4874,7 +4874,7 @@ "href": "notebooks/Advanced_cloud/dask_delayed_01.html#parallel-computations-with-dask", "title": "Parallel Computing with Earthdata and Dask: An Example of Replicating a Function Over Many Files", "section": "4. Parallel computations with Dask", - "text": "4. Parallel computations with Dask\nSections 1 and 2 need to be run prior to this.\nThe previous section showed that analyzing a year’s worth of data at 0.5 x 0.5 degree output resolution would take hours. In this section, we use dask.delayed() and a local cluster to complete this task in 7 - 20 minutes, depending on the VM type used.\nFirst, define a wrapper function which calls spatial_corrmap() for a pair of SSH, SST files and saves the output to a netCDF file. We will parallelize this function rather than spatial_corrmap():\n\ndef corrmap_tofile(grans, dir_results=\"./\", lat_halfwin=3, lon_halfwin=3, lats=None, lons=None, f_notnull=0.5):\n \"\"\"\n Calls spatial_corrmap() for a pair of SSH, SST granules and saves the results to a netCDF file.\n \"\"\"\n coef, lats, lons = spatial_corrmap(grans, lat_halfwin, lon_halfwin, lats=lats, lons=lons, f_notnull=0.5)\n date = grans[0]['umm']['GranuleUR'].split(\"_\")[-1][:8] # get date from SSH UR.\n corrmap_da = xr.DataArray(data=coef, dims=[\"lat\", \"lon\"], coords=dict(lon=lons, lat=lats), name='corr_ssh_sst')\n corrmap_da.to_netcdf(dir_results+\"spatial-corr-map_ssh-sst_\" + date + \".nc\")\n return\n\nNext, some prep work:\n\n# All output will be saved to this local directory:\ndir_results = \"results/\"\nos.makedirs(dir_results, exist_ok=True)\n\n# Latitudes, longitudes of output grid at 0.5 degree resolution:\nlats = np.arange(-80, 80, 0.5)\nlons = np.arange(0, 359, 0.5)\n\nStart up the cluster. We used a c7i.24xlarge EC2 instance type, which has 96 vCPU’s, and therefore we are able to start up 73 workers. If you use a smaller instance type in the C7i series, change the n_workers arg as needed.\n\nclient = Client(n_workers=73, threads_per_worker=1)\nprint(client.cluster)\nprint(client.dashboard_link)\n\nThis block of code will give each worker our EDL credentials (even though we logged in with earthaccess() this is necessary to get creds to each worker):\n\ndef auth_env(auth): # this gets executed on each worker\n os.environ[\"EARTHDATA_USERNAME\"] = auth[\"EARTHDATA_USERNAME\"]\n os.environ[\"EARTHDATA_PASSWORD\"] = auth[\"EARTHDATA_PASSWORD\"]\n \n_ = client.run(auth_env, auth=earthaccess.auth_environ())\n\nthen setup the parallel computations and run! (At the time this notebook was written, earthaccess produces a lot of output each time a file is opened, and so the output from this cell is long):\n\nt1 = time.time()\n\n# Process granules in parallel using Dask:\ngrans_2tuples = list(zip(grans_ssh_analyze, grans_sst_analyze))\ncorrmap_tofile_parallel = delayed(corrmap_tofile)\ntasks = [\n corrmap_tofile_parallel(g2, dir_results=\"results/\", lats=lats, lons=lons, f_notnull=0.5) \n for g2 in grans_2tuples[:]\n ] # Sets up the computations (relatively quick)\n_ = da.compute(*tasks) # Performs the computations (takes most of the time)\n\nt2 = time.time()\n\n\n## What was the total computation time?\ncomptime = round(t2-t1, 2)\nprint(\"Total computation time = \" + str(comptime) + \" seconds = \" + str(comptime/60) + \" minutes.\")\n\nTotal computation time = 451.97 seconds = 7.5328333333333335 minutes.\n\n\n\nTest plots\nColormaps of first three files\n\nfns_results = [dir_results + f for f in os.listdir(dir_results) if f.endswith(\"nc\")]\nfor fn in fns_results[:3]:\n testfile = xr.open_dataset(fn)\n testfile[\"corr_ssh_sst\"].plot(figsize=(6,2), vmin=-1, vmax=1, cmap='RdBu_r')\n testfile.close()\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nColormap of mean correlation map for all files\n\ntest_allfiles = xr.open_mfdataset(fns_results, combine='nested', concat_dim='dummy_time')\ntest_allfiles[\"corr_ssh_sst\"]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'corr_ssh_sst' (dummy_time: 121, lat: 321, lon: 718)>\ndask.array<concatenate, shape=(121, 321, 718), dtype=float64, chunksize=(1, 321, 718), chunktype=numpy.ndarray>\nCoordinates:\n * lon (lon) float64 0.0 0.5 1.0 1.5 2.0 ... 356.5 357.0 357.5 358.0 358.5\n * lat (lat) float64 -80.0 -79.5 -79.0 -78.5 -78.0 ... 78.5 79.0 79.5 80.0\nDimensions without coordinates: dummy_timexarray.DataArray'corr_ssh_sst'dummy_time: 121lat: 321lon: 718dask.array<chunksize=(1, 321, 718), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n212.77 MiB\n1.76 MiB\n\n\nShape\n(121, 321, 718)\n(1, 321, 718)\n\n\nDask graph\n121 chunks in 666 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 718 321 121\n\n\n\n\nCoordinates: (2)lon(lon)float640.0 0.5 1.0 ... 357.5 358.0 358.5array([ 0. , 0.5, 1. , ..., 357.5, 358. , 358.5])lat(lat)float64-80.0 -79.5 -79.0 ... 79.5 80.0array([-80. , -79.5, -79. , ..., 79. , 79.5, 80. ])Indexes: (2)lonPandasIndexPandasIndex(Index([ 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5,\n ...\n 354.0, 354.5, 355.0, 355.5, 356.0, 356.5, 357.0, 357.5, 358.0, 358.5],\n dtype='float64', name='lon', length=718))latPandasIndexPandasIndex(Index([-80.0, -79.5, -79.0, -78.5, -78.0, -77.5, -77.0, -76.5, -76.0, -75.5,\n ...\n 75.5, 76.0, 76.5, 77.0, 77.5, 78.0, 78.5, 79.0, 79.5, 80.0],\n dtype='float64', name='lat', length=321))Attributes: (0)\n\n\n\n\ntest_allfiles[\"corr_ssh_sst\"].mean(dim='dummy_time').plot(figsize=(8,3), vmin=-1, vmax=1, cmap='RdBu_r')\ntest_allfiles.close()", + "text": "4. Parallel computations with Dask\nSections 1 and 2 need to be run prior to this.\nThe previous section showed that analyzing a year’s worth of data at 0.5 x 0.5 degree output resolution would take hours. In this section, we use dask.delayed() and a local cluster to complete this task in 7 - 20 minutes, depending on the VM type used.\nFirst, define a wrapper function which calls spatial_corrmap() for a pair of SSH, SST files and saves the output to a netCDF file. We will parallelize this function rather than spatial_corrmap():\n\ndef corrmap_tofile(grans, dir_results=\"./\", lat_halfwin=3, lon_halfwin=3, lats=None, lons=None, f_notnull=0.5):\n \"\"\"\n Calls spatial_corrmap() for a pair of SSH, SST granules and saves the results to a netCDF file.\n \"\"\"\n coef, lats, lons = spatial_corrmap(grans, lat_halfwin, lon_halfwin, lats=lats, lons=lons, f_notnull=0.5)\n date = grans[0]['umm']['GranuleUR'].split(\"_\")[-1][:8] # get date from SSH UR.\n corrmap_da = xr.DataArray(data=coef, dims=[\"lat\", \"lon\"], coords=dict(lon=lons, lat=lats), name='corr_ssh_sst')\n corrmap_da.to_netcdf(dir_results+\"spatial-corr-map_ssh-sst_\" + date + \".nc\")\n return\n\nNext, some prep work:\n\n# All output will be saved to this local directory:\ndir_results = \"results/\"\nos.makedirs(dir_results, exist_ok=True)\n\n# Latitudes, longitudes of output grid at 0.5 degree resolution:\nlats = np.arange(-80, 80, 0.5)\nlons = np.arange(0, 359, 0.5)\n\nStart up the cluster. We used a c7i.24xlarge EC2 instance type, which has 96 vCPU’s, and therefore we are able to start up 73 workers. If you use a smaller instance type in the C7i series, change the n_workers arg as needed.\n\nclient = Client(n_workers=73, threads_per_worker=1)\nprint(client.cluster)\nprint(client.dashboard_link)\n\nThis block of code will give each worker our EDL credentials (even though we logged in with earthaccess() this is necessary to get creds to each worker):\n\ndef auth_env(auth): # this gets executed on each worker\n os.environ[\"EARTHDATA_USERNAME\"] = auth[\"EARTHDATA_USERNAME\"]\n os.environ[\"EARTHDATA_PASSWORD\"] = auth[\"EARTHDATA_PASSWORD\"]\n \n_ = client.run(auth_env, auth=earthaccess.auth_environ())\n\nthen setup the parallel computations and run! (At the time this notebook was written, earthaccess produces a lot of output each time a file is opened, and so the output from this cell is long):\n\nt1 = time.time()\n\n# Process granules in parallel using Dask:\ngrans_2tuples = list(zip(grans_ssh_analyze, grans_sst_analyze))\ncorrmap_tofile_parallel = delayed(corrmap_tofile)\ntasks = [\n corrmap_tofile_parallel(g2, dir_results=\"results/\", lats=lats, lons=lons, f_notnull=0.5) \n for g2 in grans_2tuples[:]\n ] # Sets up the computations (relatively quick)\n_ = da.compute(*tasks) # Performs the computations (takes most of the time)\n\nt2 = time.time()\n\n\n## What was the total computation time?\ncomptime = round(t2-t1, 2)\nprint(\"Total computation time = \" + str(comptime) + \" seconds = \" + str(comptime/60) + \" minutes.\")\n\nTotal computation time = 451.97 seconds = 7.5328333333333335 minutes.\n\n\n\nTest plots\nColormaps of first three files\n\nfns_results = [dir_results + f for f in os.listdir(dir_results) if f.endswith(\"nc\")]\nfor fn in fns_results[:3]:\n testfile = xr.open_dataset(fn)\n testfile[\"corr_ssh_sst\"].plot(figsize=(6,2), vmin=-1, vmax=1, cmap='RdBu_r')\n testfile.close()\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nColormap of mean correlation map for all files\n\ntest_allfiles = xr.open_mfdataset(fns_results, combine='nested', concat_dim='dummy_time')\ntest_allfiles[\"corr_ssh_sst\"]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'corr_ssh_sst' (dummy_time: 121, lat: 321, lon: 718)>\ndask.array<concatenate, shape=(121, 321, 718), dtype=float64, chunksize=(1, 321, 718), chunktype=numpy.ndarray>\nCoordinates:\n * lon (lon) float64 0.0 0.5 1.0 1.5 2.0 ... 356.5 357.0 357.5 358.0 358.5\n * lat (lat) float64 -80.0 -79.5 -79.0 -78.5 -78.0 ... 78.5 79.0 79.5 80.0\nDimensions without coordinates: dummy_timexarray.DataArray'corr_ssh_sst'dummy_time: 121lat: 321lon: 718dask.array<chunksize=(1, 321, 718), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n212.77 MiB\n1.76 MiB\n\n\nShape\n(121, 321, 718)\n(1, 321, 718)\n\n\nDask graph\n121 chunks in 666 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 718 321 121\n\n\n\n\nCoordinates: (2)lon(lon)float640.0 0.5 1.0 ... 357.5 358.0 358.5array([ 0. , 0.5, 1. , ..., 357.5, 358. , 358.5])lat(lat)float64-80.0 -79.5 -79.0 ... 79.5 80.0array([-80. , -79.5, -79. , ..., 79. , 79.5, 80. ])Indexes: (2)lonPandasIndexPandasIndex(Index([ 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5,\n ...\n 354.0, 354.5, 355.0, 355.5, 356.0, 356.5, 357.0, 357.5, 358.0, 358.5],\n dtype='float64', name='lon', length=718))latPandasIndexPandasIndex(Index([-80.0, -79.5, -79.0, -78.5, -78.0, -77.5, -77.0, -76.5, -76.0, -75.5,\n ...\n 75.5, 76.0, 76.5, 77.0, 77.5, 78.0, 78.5, 79.0, 79.5, 80.0],\n dtype='float64', name='lat', length=321))Attributes: (0)\n\n\n\ntest_allfiles[\"corr_ssh_sst\"].mean(dim='dummy_time').plot(figsize=(8,3), vmin=-1, vmax=1, cmap='RdBu_r')\ntest_allfiles.close()", "crumbs": [ "Advanced Cloud", "Dask", @@ -4898,7 +4898,7 @@ "href": "notebooks/Advanced_cloud/dask_delayed_01.html#optional-parallel-computation-on-full-record-at-0.25-degree-resolution", "title": "Parallel Computing with Earthdata and Dask: An Example of Replicating a Function Over Many Files", "section": "5. Optional: Parallel computation on full record at 0.25 degree resolution", - "text": "5. Optional: Parallel computation on full record at 0.25 degree resolution\nOnly Section 1 needs to be run prior to this. Sections 2-4 can be skipped.\nThis section mirrors the workflow of Section 4, but processes all 1808 pairs of files, spanning a little over two decades, at higher resolution. To get an estimate of how long this would take without parallel computing, you can re-run section 3 but replace a value of 0.5 for the higher_res variable with 0.25 (in the part where we estimate comp times). Trying this on a few machines, we get that it would take anywhere from 21 to 34 hours to process the record over a single year, which means for 22 years it would take 19 to 31 days to complete the entire record. When we used this code to run the computation in parallel on a c7i.24xlarge instance, computation took us instead ~10.5 hours and cost ~$45, obtaining the following mean map for the full record:\n\n\n\nimage.png\n\n\nFirst, we duplicate most of the code in Section 2, this time getting granule info objects for the entire record:\n\nearthaccess.login()\n\n## Granule info for all files in both collections:\ngrans_ssh = earthaccess.search_data(short_name=\"SEA_SURFACE_HEIGHT_ALT_GRIDS_L4_2SATS_5DAY_6THDEG_V_JPL2205\")\ngrans_sst = earthaccess.search_data(short_name=\"MW_OI-REMSS-L4-GLOB-v5.0\")\n\n## File coverage dates extracted from filenames:\ndates_ssh = [g['umm']['GranuleUR'].split('_')[-1][:8] for g in grans_ssh]\ndates_sst = [g['umm']['GranuleUR'][:8] for g in grans_sst]\n\n## Separate granule info for dates where there are both SSH and SST files:\ngrans_ssh_analyze = []\ngrans_sst_analyze = []\nfor j in range(len(dates_ssh)):\n if dates_ssh[j] in dates_sst:\n grans_ssh_analyze.append(grans_ssh[j])\n grans_sst_analyze.append(grans_sst[dates_sst.index(dates_ssh[j])])\n\nGranules found: 2207\nGranules found: 9039\n\n\nSame wrapper function as in section 4:\n\ndef corrmap_tofile(grans, dir_results=\"./\", lat_halfwin=3, lon_halfwin=3, lats=None, lons=None, f_notnull=0.5):\n \"\"\"\n Calls spatial_corrmap() for a pair of SSH, SST granules and saves the results to a netCDF file.\n \"\"\"\n coef, lats, lons = spatial_corrmap(grans, lat_halfwin, lon_halfwin, lats=lats, lons=lons, f_notnull=0.5)\n date = grans[0]['umm']['GranuleUR'].split(\"_\")[-1][:8] # get date from SSH UR.\n corrmap_da = xr.DataArray(data=coef, dims=[\"lat\", \"lon\"], coords=dict(lon=lons, lat=lats), name='corr_ssh_sst')\n corrmap_da.to_netcdf(dir_results+\"spatial-corr-map_ssh-sst_\" + date + \".nc\")\n return\n\nSome prep work:\n\n# Re-create the local directory to store results in:\ndir_results = \"results/\"\nif os.path.exists(dir_results) and os.path.isdir(dir_results):\n shutil.rmtree(dir_results)\nos.makedirs(dir_results)\n\n# Latitudes, longitudes of output grid at 0.5 degree resolution:\nlats = np.arange(-80, 80.1, 0.25)\nlons = np.arange(0, 360, 0.25)\n\nDefine function that will pass each worker our EDL credentials:\n\ndef auth_env(auth): # this gets executed on each worker\n os.environ[\"EARTHDATA_USERNAME\"] = auth[\"EARTHDATA_USERNAME\"]\n os.environ[\"EARTHDATA_PASSWORD\"] = auth[\"EARTHDATA_PASSWORD\"]\n\n\nSlightly altered method of setting up the parallel computations\nIn theory, we would like to have the simplest parallel workflow of: 1. Start up cluster 2. Map all of our file pairs to the cluster workers\nAnd in fact this is how we did it in Section 4. However, we found when processing the full record that as the workers complete more of the file pairs, the computation time for each pair is progressively longer. From the error messages, we think this may have something to do with memory usage and garbage collection. In short, a fraction of the VM memory is not released by each worker after they finish a pair of files, and our guess is this build up over 100’s of files has a performance impact.\nTo get around this, we use the follwing workflow: 1. Split the list of file-pairs into “batches” 2. In a for-loop: >* Start a new cluster >* Map a file-pairs for one of the batches to the cluster workers >* Close the cluster\nWhile less elegant, we find that is does keep the computation times more consistent throughout the 1808 file-pairs.\n\n## Nice to check how many CPU's are on this machine before setting worker number:\nprint(multiprocessing.cpu_count())\n\n96\n\n\n\n## Create list of integers which will be start/end indexes for each file batch:\nn_workers=96\nn_batches = int(np.ceil(len(grans_ssh_analyze)/n_workers))\ni_batches = [n_workers*i for i in (range(n_batches+1))]\n\nSetup parallel computations and run (At the time this notebook was written, earthaccess produces a lot of output each time a file is opened, and so the output from this cell is long):\n\nt1 = time.time()\n\ngrans_2tuples = list(zip(grans_ssh_analyze, grans_sst_analyze))\n\ndask.config.set({\"distributed.admin.system-monitor.gil.enabled\": False}) # Adjust settings to suppress noisy output when closing cluster\nfor i in range(len(i_batches)-1):\n\n # Start new cluster and pass Earthdata Login creds to each worker:\n client = Client(n_workers=n_workers, threads_per_worker=1)\n print(client.cluster, '\\n', client.dashboard_link)\n _ = client.run(auth_env, auth=earthaccess.auth_environ()) \n \n # Process granules in parallel using Dask:\n corrmap_tofile_parallel = delayed(corrmap_tofile)\n tasks = [\n corrmap_tofile_parallel(g2, dir_results=\"results/\", lats=lats, lons=lons, f_notnull=0.5) \n for g2 in grans_2tuples[i_batches[i]:i_batches[i+1]]\n ] # Sets up the computations (relatively quick)\n _ = da.compute(*tasks) # Performs the computations (takes most of the time)\n\n # Close cluster:\n client.cluster.close()\n client.close()\n print(\"Time elapsed =\", str(round(time.time() - t1)/60), \"minutes.\")\n\nt2 = time.time()\n\n\n## What was the total computation time?\ncomptime = round(t2-t1, 2)\nprint(\"Total computation time = \" + str(comptime) + \" seconds = \" + str(comptime/60) + \" minutes.\")\n\nTotal computation time = 37563.47 seconds = 626.0578333333334 minutes.\n\n\n\n\nTest plots\nColormaps of first three files\n\nfns_results = [dir_results + f for f in os.listdir(dir_results) if f.endswith(\"nc\")]\nfor fn in fns_results[:3]:\n testfile = xr.open_dataset(fn)\n testfile[\"corr_ssh_sst\"].plot(figsize=(6,2), vmin=-1, vmax=1, cmap='RdBu_r')\n testfile.close()\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nColormap of mean correlation map for all files\n\ntest_allfiles = xr.open_mfdataset(fns_results, combine='nested', concat_dim='dummy_time')\ntest_allfiles[\"corr_ssh_sst\"]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'corr_ssh_sst' (dummy_time: 1808, lat: 641, lon: 1440)>\ndask.array<concatenate, shape=(1808, 641, 1440), dtype=float64, chunksize=(1, 641, 1440), chunktype=numpy.ndarray>\nCoordinates:\n * lon (lon) float64 0.0 0.25 0.5 0.75 1.0 ... 359.0 359.2 359.5 359.8\n * lat (lat) float64 -80.0 -79.75 -79.5 -79.25 ... 79.25 79.5 79.75 80.0\nDimensions without coordinates: dummy_timexarray.DataArray'corr_ssh_sst'dummy_time: 1808lat: 641lon: 1440dask.array<chunksize=(1, 641, 1440), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.43 GiB\n7.04 MiB\n\n\nShape\n(1808, 641, 1440)\n(1, 641, 1440)\n\n\nDask graph\n1808 chunks in 5425 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1440 641 1808\n\n\n\n\nCoordinates: (2)lon(lon)float640.0 0.25 0.5 ... 359.2 359.5 359.8array([0.0000e+00, 2.5000e-01, 5.0000e-01, ..., 3.5925e+02, 3.5950e+02,\n 3.5975e+02])lat(lat)float64-80.0 -79.75 -79.5 ... 79.75 80.0array([-80. , -79.75, -79.5 , ..., 79.5 , 79.75, 80. ])Indexes: (2)lonPandasIndexPandasIndex(Index([ 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0,\n 2.25,\n ...\n 357.5, 357.75, 358.0, 358.25, 358.5, 358.75, 359.0, 359.25, 359.5,\n 359.75],\n dtype='float64', name='lon', length=1440))latPandasIndexPandasIndex(Index([ -80.0, -79.75, -79.5, -79.25, -79.0, -78.75, -78.5, -78.25, -78.0,\n -77.75,\n ...\n 77.75, 78.0, 78.25, 78.5, 78.75, 79.0, 79.25, 79.5, 79.75,\n 80.0],\n dtype='float64', name='lat', length=641))Attributes: (0)\n\n\n\n\ntest_allfiles[\"corr_ssh_sst\"].mean(dim='dummy_time').plot(figsize=(8,3), vmin=-1, vmax=1, cmap='RdBu_r')\ntest_allfiles.close()", + "text": "5. Optional: Parallel computation on full record at 0.25 degree resolution\nOnly Section 1 needs to be run prior to this. Sections 2-4 can be skipped.\nThis section mirrors the workflow of Section 4, but processes all 1808 pairs of files, spanning a little over two decades, at higher resolution. To get an estimate of how long this would take without parallel computing, you can re-run section 3 but replace a value of 0.5 for the higher_res variable with 0.25 (in the part where we estimate comp times). Trying this on a few machines, we get that it would take anywhere from 21 to 34 hours to process the record over a single year, which means for 22 years it would take 19 to 31 days to complete the entire record. When we used this code to run the computation in parallel on a c7i.24xlarge instance, computation took us instead ~10.5 hours and cost ~$45, obtaining the following mean map for the full record:\n\n\n\nimage.png\n\n\nFirst, we duplicate most of the code in Section 2, this time getting granule info objects for the entire record:\n\nearthaccess.login()\n\n## Granule info for all files in both collections:\ngrans_ssh = earthaccess.search_data(short_name=\"SEA_SURFACE_HEIGHT_ALT_GRIDS_L4_2SATS_5DAY_6THDEG_V_JPL2205\")\ngrans_sst = earthaccess.search_data(short_name=\"MW_OI-REMSS-L4-GLOB-v5.0\")\n\n## File coverage dates extracted from filenames:\ndates_ssh = [g['umm']['GranuleUR'].split('_')[-1][:8] for g in grans_ssh]\ndates_sst = [g['umm']['GranuleUR'][:8] for g in grans_sst]\n\n## Separate granule info for dates where there are both SSH and SST files:\ngrans_ssh_analyze = []\ngrans_sst_analyze = []\nfor j in range(len(dates_ssh)):\n if dates_ssh[j] in dates_sst:\n grans_ssh_analyze.append(grans_ssh[j])\n grans_sst_analyze.append(grans_sst[dates_sst.index(dates_ssh[j])])\n\nGranules found: 2207\nGranules found: 9039\n\n\nSame wrapper function as in section 4:\n\ndef corrmap_tofile(grans, dir_results=\"./\", lat_halfwin=3, lon_halfwin=3, lats=None, lons=None, f_notnull=0.5):\n \"\"\"\n Calls spatial_corrmap() for a pair of SSH, SST granules and saves the results to a netCDF file.\n \"\"\"\n coef, lats, lons = spatial_corrmap(grans, lat_halfwin, lon_halfwin, lats=lats, lons=lons, f_notnull=0.5)\n date = grans[0]['umm']['GranuleUR'].split(\"_\")[-1][:8] # get date from SSH UR.\n corrmap_da = xr.DataArray(data=coef, dims=[\"lat\", \"lon\"], coords=dict(lon=lons, lat=lats), name='corr_ssh_sst')\n corrmap_da.to_netcdf(dir_results+\"spatial-corr-map_ssh-sst_\" + date + \".nc\")\n return\n\nSome prep work:\n\n# Re-create the local directory to store results in:\ndir_results = \"results/\"\nif os.path.exists(dir_results) and os.path.isdir(dir_results):\n shutil.rmtree(dir_results)\nos.makedirs(dir_results)\n\n# Latitudes, longitudes of output grid at 0.5 degree resolution:\nlats = np.arange(-80, 80.1, 0.25)\nlons = np.arange(0, 360, 0.25)\n\nDefine function that will pass each worker our EDL credentials:\n\ndef auth_env(auth): # this gets executed on each worker\n os.environ[\"EARTHDATA_USERNAME\"] = auth[\"EARTHDATA_USERNAME\"]\n os.environ[\"EARTHDATA_PASSWORD\"] = auth[\"EARTHDATA_PASSWORD\"]\n\n\nSlightly altered method of setting up the parallel computations\nIn theory, we would like to have the simplest parallel workflow of: 1. Start up cluster 2. Map all of our file pairs to the cluster workers\nAnd in fact this is how we did it in Section 4. However, we found when processing the full record that as the workers complete more of the file pairs, the computation time for each pair is progressively longer. From the error messages, we think this may have something to do with memory usage and garbage collection. In short, a fraction of the VM memory is not released by each worker after they finish a pair of files, and our guess is this build up over 100’s of files has a performance impact.\nTo get around this, we use the follwing workflow: 1. Split the list of file-pairs into “batches” 2. In a for-loop: >* Start a new cluster >* Map a file-pairs for one of the batches to the cluster workers >* Close the cluster\nWhile less elegant, we find that is does keep the computation times more consistent throughout the 1808 file-pairs.\n\n## Nice to check how many CPU's are on this machine before setting worker number:\nprint(multiprocessing.cpu_count())\n\n96\n\n\n\n## Create list of integers which will be start/end indexes for each file batch:\nn_workers=96\nn_batches = int(np.ceil(len(grans_ssh_analyze)/n_workers))\ni_batches = [n_workers*i for i in (range(n_batches+1))]\n\nSetup parallel computations and run (At the time this notebook was written, earthaccess produces a lot of output each time a file is opened, and so the output from this cell is long):\n\nt1 = time.time()\n\ngrans_2tuples = list(zip(grans_ssh_analyze, grans_sst_analyze))\n\ndask.config.set({\"distributed.admin.system-monitor.gil.enabled\": False}) # Adjust settings to suppress noisy output when closing cluster\nfor i in range(len(i_batches)-1):\n\n # Start new cluster and pass Earthdata Login creds to each worker:\n client = Client(n_workers=n_workers, threads_per_worker=1)\n print(client.cluster, '\\n', client.dashboard_link)\n _ = client.run(auth_env, auth=earthaccess.auth_environ()) \n \n # Process granules in parallel using Dask:\n corrmap_tofile_parallel = delayed(corrmap_tofile)\n tasks = [\n corrmap_tofile_parallel(g2, dir_results=\"results/\", lats=lats, lons=lons, f_notnull=0.5) \n for g2 in grans_2tuples[i_batches[i]:i_batches[i+1]]\n ] # Sets up the computations (relatively quick)\n _ = da.compute(*tasks) # Performs the computations (takes most of the time)\n\n # Close cluster:\n client.cluster.close()\n client.close()\n print(\"Time elapsed =\", str(round(time.time() - t1)/60), \"minutes.\")\n\nt2 = time.time()\n\n\n## What was the total computation time?\ncomptime = round(t2-t1, 2)\nprint(\"Total computation time = \" + str(comptime) + \" seconds = \" + str(comptime/60) + \" minutes.\")\n\nTotal computation time = 37563.47 seconds = 626.0578333333334 minutes.\n\n\n\n\nTest plots\nColormaps of first three files\n\nfns_results = [dir_results + f for f in os.listdir(dir_results) if f.endswith(\"nc\")]\nfor fn in fns_results[:3]:\n testfile = xr.open_dataset(fn)\n testfile[\"corr_ssh_sst\"].plot(figsize=(6,2), vmin=-1, vmax=1, cmap='RdBu_r')\n testfile.close()\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nColormap of mean correlation map for all files\n\ntest_allfiles = xr.open_mfdataset(fns_results, combine='nested', concat_dim='dummy_time')\ntest_allfiles[\"corr_ssh_sst\"]\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.DataArray 'corr_ssh_sst' (dummy_time: 1808, lat: 641, lon: 1440)>\ndask.array<concatenate, shape=(1808, 641, 1440), dtype=float64, chunksize=(1, 641, 1440), chunktype=numpy.ndarray>\nCoordinates:\n * lon (lon) float64 0.0 0.25 0.5 0.75 1.0 ... 359.0 359.2 359.5 359.8\n * lat (lat) float64 -80.0 -79.75 -79.5 -79.25 ... 79.25 79.5 79.75 80.0\nDimensions without coordinates: dummy_timexarray.DataArray'corr_ssh_sst'dummy_time: 1808lat: 641lon: 1440dask.array<chunksize=(1, 641, 1440), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n12.43 GiB\n7.04 MiB\n\n\nShape\n(1808, 641, 1440)\n(1, 641, 1440)\n\n\nDask graph\n1808 chunks in 5425 graph layers\n\n\nData type\nfloat64 numpy.ndarray\n\n\n\n\n 1440 641 1808\n\n\n\n\nCoordinates: (2)lon(lon)float640.0 0.25 0.5 ... 359.2 359.5 359.8array([0.0000e+00, 2.5000e-01, 5.0000e-01, ..., 3.5925e+02, 3.5950e+02,\n 3.5975e+02])lat(lat)float64-80.0 -79.75 -79.5 ... 79.75 80.0array([-80. , -79.75, -79.5 , ..., 79.5 , 79.75, 80. ])Indexes: (2)lonPandasIndexPandasIndex(Index([ 0.0, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2.0,\n 2.25,\n ...\n 357.5, 357.75, 358.0, 358.25, 358.5, 358.75, 359.0, 359.25, 359.5,\n 359.75],\n dtype='float64', name='lon', length=1440))latPandasIndexPandasIndex(Index([ -80.0, -79.75, -79.5, -79.25, -79.0, -78.75, -78.5, -78.25, -78.0,\n -77.75,\n ...\n 77.75, 78.0, 78.25, 78.5, 78.75, 79.0, 79.25, 79.5, 79.75,\n 80.0],\n dtype='float64', name='lat', length=641))Attributes: (0)\n\n\n\ntest_allfiles[\"corr_ssh_sst\"].mean(dim='dummy_time').plot(figsize=(8,3), vmin=-1, vmax=1, cmap='RdBu_r')\ntest_allfiles.close()", "crumbs": [ "Advanced Cloud", "Dask", @@ -5019,7 +5019,7 @@ "href": "quarto_text/SMAP.html#additional-resources", "title": "SMAP", "section": "Additional Resources", - "text": "Additional Resources\nNASA Mission Page", + "text": "Additional Resources\nNASA Mission Page\nData in Action: Using Coastal Surface Salinity to Monitor Global Water Cycle Changes", "crumbs": [ "Tutorials", "Dataset Specific", @@ -5108,7 +5108,7 @@ "href": "quarto_text/SWOT.html#additional-resources", "title": "SWOT", "section": "Additional Resources", - "text": "Additional Resources\n\nData Descriptions and Features\nSWOT Data User Handbook\nFeatures of KaRIn Data that Users Should be Aware of - Slide Deck presented at the 2023 SWOT Science Team by Curtis Chen that addresses practical aspects of interpreting SWOT KaRIn data products, answers frequently asked questions, and provides tips to hopefully avoid misinterpretation and confusion of the data.\nLatest Release Notes - Version C KaRIn Science Data Products (aka 2.0) - See section 6 for current issues and features of the datasets!\nMission Spacecraft Events - page for relevant information about spacecraft events that impact data quality and availability.\n\n\nA Priori Databases\nSWOT River Database (SWORD) - the database for rivers SWOT products are based upon, great for discovering river reach IDs!\nPrior Lake Database (PLD) - Add in the PLD layer into Hydroweb.next to see the lakes SWOT products are based upon, great for discovering lake IDs!\n\n\nEarthdata Webinar\nAccessing Data for the World’s Water with SWOT\nWatch the Recording! Learn how to discover, access, and use SWOT mission data and how these data can lead to new, innovative science and applications in the world of water.\n\n\nSWOT Community GitHub Repository\nhttps://github.com/SWOT-community\nThis is a code space for the global SWOT mission community. We share experience, code, research and much more. Our mission is to increase the value of SWOT.\n\n\n2024 SWOT Hydrology Data Access Workshop\nhttps://podaac.github.io/2024-SWOT-Hydro-Workshop/\nThis workshop focuses on the SWOT Hydrology datasets including river and lake vector data in shapefiles, and raster, pixel cloud, and pixel vector data in netCDF. In this pre-meeting workshop for the AGU Chapman: Remote Sensing of the Water Cycle Conference, participants are introduced to SWOT and the various ways to access and utilize its data products, including via cloud computing, local download, and data transformation tools.\n\n\n2022 SWOT Ocean Cloud Workshop\nhttps://podaac.github.io/2022-SWOT-Ocean-Cloud-Workshop/\nThe goal of the workshop was to enable the (oceanography) science team to be ready for processing and handling the large volumes of SWOT SSH data in the cloud. Learning objectives focus on how to access the simulated SWOT L2 SSH data from Earthdata Cloud either by downloading or accessing the data on the cloud.", + "text": "Additional Resources\n\nData Descriptions and Features\nSWOT Data User Handbook\nFeatures of KaRIn Data that Users Should be Aware of - Slide Deck presented at the 2023 SWOT Science Team by Curtis Chen that addresses practical aspects of interpreting SWOT KaRIn data products, answers frequently asked questions, and provides tips to hopefully avoid misinterpretation and confusion of the data.\nLatest Release Notes - Version C KaRIn Science Data Products (aka 2.0) - See section 6 for current issues and features of the datasets!\nMission Spacecraft Events - page for relevant information about spacecraft events that impact data quality and availability.\n\n\nA Priori Databases\nSWOT River Database (SWORD) - the database for rivers SWOT products are based upon, great for discovering river reach IDs!\nPrior Lake Database (PLD) - Add in the PLD layer into Hydroweb.next to see the lakes SWOT products are based upon, great for discovering lake IDs!\n\n\nEarthdata Webinar\nAccessing Data for the World’s Water with SWOT\nWatch the Recording! Learn how to discover, access, and use SWOT mission data and how these data can lead to new, innovative science and applications in the world of water.\n\n\nSWOT Community GitHub Repository\nhttps://github.com/SWOT-community\nThis is a code space for the global SWOT mission community. We share experience, code, research and much more. Our mission is to increase the value of SWOT.\n\n\nData in Action Stories\nFacing the challenges of using high-resolution sea surface height observations from SWOT\nUnveiling the first global observations of high resolution Sea Surface Height from SWOT\n\n\n2024 SWOT Hydrology Data Access Workshop\nhttps://podaac.github.io/2024-SWOT-Hydro-Workshop/\nThis workshop focuses on the SWOT Hydrology datasets including river and lake vector data in shapefiles, and raster, pixel cloud, and pixel vector data in netCDF. In this pre-meeting workshop for the AGU Chapman: Remote Sensing of the Water Cycle Conference, participants are introduced to SWOT and the various ways to access and utilize its data products, including via cloud computing, local download, and data transformation tools.\n\n\n2022 SWOT Ocean Cloud Workshop\nhttps://podaac.github.io/2022-SWOT-Ocean-Cloud-Workshop/\nThe goal of the workshop was to enable the (oceanography) science team to be ready for processing and handling the large volumes of SWOT SSH data in the cloud. Learning objectives focus on how to access the simulated SWOT L2 SSH data from Earthdata Cloud either by downloading or accessing the data on the cloud.", "crumbs": [ "Tutorials", "Dataset Specific", @@ -5275,7 +5275,7 @@ "href": "external/DownloadDopplerScattData.html", "title": "S-MODE Workshop: Science Case Study Airborne Part 1", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop", "crumbs": [ "Tutorials", "Dataset Specific", @@ -5340,7 +5340,7 @@ "href": "external/July_2022_Earthdata_Webinar.html", "title": "Earthdata Webinar", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, the-coding-club", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, the-coding-club", "crumbs": [ "Webinars", "July 2022 Earthdata Webinar Notebook" @@ -5505,7 +5505,7 @@ "href": "external/SWOT_to_kerchunk.html", "title": "Kerchunk JSON Generation", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, the-coding-club.", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, the-coding-club.", "crumbs": [ "Advanced Cloud", "Kerchunk" @@ -5527,7 +5527,7 @@ "href": "external/SWOT_to_kerchunk.html#start-dask-cluster", "title": "Kerchunk JSON Generation", "section": "Start Dask cluster", - "text": "Start Dask cluster\n\nData can be read via s3 in parallel and used by Kerchunk\nNOTE: Performance is greatly improved by more CPU’s/threads. 4 hours can become 1 hour, 90 mins can become 20 mins, etc.\nFor over 10,000 granules at least 4 threads is recommended\n\n\nclient = Client()\nclient\n\n\n\n \n \n Client\n Client-28f1d48e-41d3-11ee-8aca-c62ddac59d68\n \n\n\n\nConnection method: Cluster object\nCluster type: distributed.LocalCluster\n\n\nDashboard: http://127.0.0.1:8787/status\n\n\n\n\n\n\n\nCluster Info\n\n\n\n\n\n\n\nLocalCluster\nf1696fda\n\n\n\nDashboard: http://127.0.0.1:8787/status\nWorkers: 4\n\n\nTotal threads: 4\nTotal memory: 8.00 GiB\n\n\nStatus: running\nUsing processes: True\n\n\n\n\n\n\n\nScheduler Info\n\n\n\n\n\n\n\nScheduler\nScheduler-d99eecbb-b5ff-4e92-80e3-e03e51977918\n\n\n\nComm: tcp://127.0.0.1:33331\nWorkers: 4\n\n\nDashboard: http://127.0.0.1:8787/status\nTotal threads: 4\n\n\nStarted: Just now\nTotal memory: 8.00 GiB\n\n\n\n\n\n\n\n\nWorkers\n\n\n\n\n\n\n\n\n\nWorker: 0\n\n\n\n\nComm: tcp://127.0.0.1:34527\nTotal threads: 1\n\n\nDashboard: http://127.0.0.1:45957/status\nMemory: 2.00 GiB\n\n\nNanny: tcp://127.0.0.1:37945\n\n\n\nLocal directory: /tmp/dask-worker-space/worker-yycevmql\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nWorker: 1\n\n\n\n\nComm: tcp://127.0.0.1:36915\nTotal threads: 1\n\n\nDashboard: http://127.0.0.1:41499/status\nMemory: 2.00 GiB\n\n\nNanny: tcp://127.0.0.1:39355\n\n\n\nLocal directory: /tmp/dask-worker-space/worker-ivjiyl7u", + "text": "Start Dask cluster\n\nData can be read via s3 in parallel and used by Kerchunk\nNOTE: Performance is greatly improved by more CPU’s/threads. 4 hours can become 1 hour, 90 mins can become 20 mins, etc.\nFor over 10,000 granules at least 4 threads is recommended\n\n\nclient = Client()\nclient\n\n\n \n \n Client\n Client-28f1d48e-41d3-11ee-8aca-c62ddac59d68\n \n\n\n\nConnection method: Cluster object\nCluster type: distributed.LocalCluster\n\n\nDashboard: http://127.0.0.1:8787/status\n\n\n\n\n\n\n\nCluster Info\n\n\n\n\n\n\n\nLocalCluster\nf1696fda\n\n\n\nDashboard: http://127.0.0.1:8787/status\nWorkers: 4\n\n\nTotal threads: 4\nTotal memory: 8.00 GiB\n\n\nStatus: running\nUsing processes: True\n\n\n\n\n\n\n\nScheduler Info\n\n\n\n\n\n\n\nScheduler\nScheduler-d99eecbb-b5ff-4e92-80e3-e03e51977918\n\n\n\nComm: tcp://127.0.0.1:33331\nWorkers: 4\n\n\nDashboard: http://127.0.0.1:8787/status\nTotal threads: 4\n\n\nStarted: Just now\nTotal memory: 8.00 GiB\n\n\n\n\n\n\n\n\nWorkers\n\n\n\n\n\n\n\n\n\nWorker: 0\n\n\n\n\nComm: tcp://127.0.0.1:34527\nTotal threads: 1\n\n\nDashboard: http://127.0.0.1:45957/status\nMemory: 2.00 GiB\n\n\nNanny: tcp://127.0.0.1:37945\n\n\n\nLocal directory: /tmp/dask-worker-space/worker-yycevmql\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nWorker: 1\n\n\n\n\nComm: tcp://127.0.0.1:36915\nTotal threads: 1\n\n\nDashboard: http://127.0.0.1:41499/status\nMemory: 2.00 GiB\n\n\nNanny: tcp://127.0.0.1:39355\n\n\n\nLocal directory: /tmp/dask-worker-space/worker-ivjiyl7u", "crumbs": [ "Advanced Cloud", "Kerchunk" @@ -5593,7 +5593,7 @@ "href": "external/SWOT_to_kerchunk.html#check-by-opening-dataset", "title": "Kerchunk JSON Generation", "section": "Check by opening dataset", - "text": "Check by opening dataset\n\ndata = xr.open_dataset(\n \"reference://\", engine=\"zarr\", chunks={}, decode_times=False,\n backend_kwargs={\n \"storage_options\": {\n \"fo\": f'{collection}_kerchunk_DEMO.json',\n \"remote_protocol\": \"s3\",\n \"remote_options\": {\"anon\": False, \"key\": creds['accessKeyId'], \"secret\": creds['secretAccessKey'], \"token\": creds[\"sessionToken\"]}\n },\n \"consolidated\": False\n }\n)\ndata\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (cycle_num: 3, pass_num: 456,\n num_lines: 9866, num_pixels: 71,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) float64 3.0 4.0 5.0\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n * pass_num (pass_num) float64 1.0 2.0 ... 583.0\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/91)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n correction_flag (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n ... ...\n wind_speed_karin (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_karin_2 (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float32 dask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\nAttributes: (12/32)\n Conventions: CF-1.7\n contact: CNES aviso@altimetry.fr, JPL podaac@podaac.jp...\n cycle_number: 5\n ellipsoid_flattening: 0.003352810664781205\n ellipsoid_semi_major_axis: 6378137.0\n equator_longitude: 206.06188772087626\n ... ...\n right_last_longitude: 289.6585533138908\n source: Simulate product\n time_coverage_end: 2014-07-24T10:18:18.533147Z\n time_coverage_start: 2014-07-24T09:26:52.109265Z\n title: Level 2 Low Rate Sea Surface Height Data Prod...\n wavelength: 0.008385803020979xarray.DatasetDimensions:cycle_num: 3pass_num: 456num_lines: 9866num_pixels: 71num_sides: 2Coordinates: (6)cycle_num(cycle_num)float643.0 4.0 5.0array([3., 4., 5.])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nfloat64\n\n\n1.0 2.0 3.0 ... 579.0 580.0 583.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([ 1., 2., 3., ..., 579., 580., 583.])\n\n\n\n\n\n\n\nData variables: (91)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ncorrection_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for corrections.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nquality flag for corrections\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice\n\nflag_values :\n\n[0, 1, 2]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nTBD\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_18\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_15\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_15\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nsea surface wind wave mean period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wave_significant_period\n\nunits :\n\ns\n\nvalid_max :\n\n100\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.49 MiB\n38.54 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbit quality flag.\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.49 MiB\n38.54 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n205.94 MiB\n154.16 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nobject\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction to ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction to height\n\nsource :\n\nTBD\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction to ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction to height\n\nsource :\n\nTBD\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_baseline_dilation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to baseline mast dilation\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nKaRIn error\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_orbital\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to orbital perturbations\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_phase\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to phase\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_roll\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to roll\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_timing\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nTiming error\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_true_ssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight of the sea surface free of measurement errors.\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nsea surface height quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_sea_state_bias\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height used in sea state bias correction.\n\nlong_name :\n\nSWH used in sea state bias correction\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncalendar :\n\ngregorian\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\nYYYY-MM-DDThh:mm:ssZ\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n35.0\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncalendar :\n\ngregorian\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n[Value of TAI-UTC at time of first record]\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nsource :\n\nTBD\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nsource :\n\nTBD\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\nAttributes: (32)Conventions :CF-1.7contact :CNES aviso@altimetry.fr, JPL podaac@podaac.jpl.nasa.govcycle_number :5ellipsoid_flattening :0.003352810664781205ellipsoid_semi_major_axis :6378137.0equator_longitude :206.06188772087626equator_time :2014-07-24T09:52:36.962185Zgeospatial_lat_max :78.29189230598696geospatial_lat_min :-78.29203183241484geospatial_lon_max :289.6585533138908geospatial_lon_min :122.7028213028531history :2021-09-10 10:00:06Z : Creationinstitution :CNES/JPLleft_first_latitude :-77.032982418125left_first_longitude :122.7028213028531left_last_latitude :78.29189230598696left_last_longitude :289.65746162390826orbit_solution :POEpass_number :545platform :SWOTproduct_version :1.1.0.dev33reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :Gaultier, L., C. Ubelmann, and L.-L. Fu, 2016: The Challenge of Using Future SWOT Data for Oceanic Field Reconstruction. J. Atmos. Oceanic Technol., 33, 119-126, doi:10.1175/jtech-d-15-0160.1. http://dx.doi.org/10.1175/JTECH-D-15-0160.1.right_first_latitude :-78.29203183241484right_first_longitude :122.70935482261133right_last_latitude :77.03284214129418right_last_longitude :289.6585533138908source :Simulate producttime_coverage_end :2014-07-24T10:18:18.533147Ztime_coverage_start :2014-07-24T09:26:52.109265Ztitle :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavewavelength :0.008385803020979", + "text": "Check by opening dataset\n\ndata = xr.open_dataset(\n \"reference://\", engine=\"zarr\", chunks={}, decode_times=False,\n backend_kwargs={\n \"storage_options\": {\n \"fo\": f'{collection}_kerchunk_DEMO.json',\n \"remote_protocol\": \"s3\",\n \"remote_options\": {\"anon\": False, \"key\": creds['accessKeyId'], \"secret\": creds['secretAccessKey'], \"token\": creds[\"sessionToken\"]}\n },\n \"consolidated\": False\n }\n)\ndata\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n<xarray.Dataset>\nDimensions: (cycle_num: 3, pass_num: 456,\n num_lines: 9866, num_pixels: 71,\n num_sides: 2)\nCoordinates:\n * cycle_num (cycle_num) float64 3.0 4.0 5.0\n latitude (cycle_num, pass_num, num_lines, num_pixels) float64 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n latitude_nadir (cycle_num, pass_num, num_lines) float64 dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n longitude (cycle_num, pass_num, num_lines, num_pixels) float64 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n longitude_nadir (cycle_num, pass_num, num_lines) float64 dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n * pass_num (pass_num) float64 1.0 2.0 ... 583.0\nDimensions without coordinates: num_lines, num_pixels, num_sides\nData variables: (12/91)\n ancillary_surface_classification_flag (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n correction_flag (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n cross_track_angle (cycle_num, pass_num, num_lines) float64 dask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n cross_track_distance (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n dac (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n depth_or_elevation (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n ... ...\n wind_speed_karin (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_karin_2 (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_model_u (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_model_v (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n wind_speed_rad (cycle_num, pass_num, num_lines, num_sides) float32 dask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n x_factor (cycle_num, pass_num, num_lines, num_pixels) float32 dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\nAttributes: (12/32)\n Conventions: CF-1.7\n contact: CNES aviso@altimetry.fr, JPL podaac@podaac.jp...\n cycle_number: 5\n ellipsoid_flattening: 0.003352810664781205\n ellipsoid_semi_major_axis: 6378137.0\n equator_longitude: 206.06188772087626\n ... ...\n right_last_longitude: 289.6585533138908\n source: Simulate product\n time_coverage_end: 2014-07-24T10:18:18.533147Z\n time_coverage_start: 2014-07-24T09:26:52.109265Z\n title: Level 2 Low Rate Sea Surface Height Data Prod...\n wavelength: 0.008385803020979xarray.DatasetDimensions:cycle_num: 3pass_num: 456num_lines: 9866num_pixels: 71num_sides: 2Coordinates: (6)cycle_num(cycle_num)float643.0 4.0 5.0array([3., 4., 5.])latitude(cycle_num, pass_num, num_lines, num_pixels)float64dask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>comment :Latitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude.long_name :latitude (positive N, negative S)standard_name :latitudeunits :degrees_northvalid_max :80000000valid_min :-80000000\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlatitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeodetic latitude [-80,80] (degrees north of equator) of the satellite nadir point.\n\nlong_name :\n\nlatitude of satellite nadir point\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nlongitude\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian.\n\nlong_name :\n\nlongitude (degrees East)\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlongitude_nadir\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude (degrees east of Grenwich meridian) of the satellite nadir point.\n\nlong_name :\n\nlongitude of satellite nadir point\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\npass_num\n\n\n(pass_num)\n\n\nfloat64\n\n\n1.0 2.0 3.0 ... 579.0 580.0 583.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\narray([ 1., 2., 3., ..., 579., 580., 583.])\n\n\n\n\n\n\n\nData variables: (91)\n\n\n\n\n\n\n\nancillary_surface_classification_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n7-state surface type classification computed from a mask built with MODIS and GlobCover data.\n\nflag_meanings :\n\nopen_ocean land continental_water aquatic_vegetation continental_ice_snow floating_ice salted_basin\n\nflag_values :\n\n[0, 1, 2, 3, 4, 5, 6]\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nsurface classification\n\nsource :\n\nMODIS/GlobCover\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n6\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ncorrection_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for corrections.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nquality flag for corrections\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ncross_track_angle\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the cross-track direction to the right of the spacecraft velocity vector.\n\nlong_name :\n\ncross-track angle from true north\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\ncross_track_distance\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDistance of sample from nadir. Negative values indicate the left side of the swath, and positive values indicate the right side of the swath.\n\nlong_name :\n\ncross track distance\n\nunits :\n\nm\n\nvalid_max :\n\n75000.0\n\nvalid_min :\n\n-75000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndac\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nModel estimate of the effect on sea surface topography due to high frequency air pressure and wind effects and the low-frequency height from inverted barometer effect (inv_bar_cor). This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively. Use only one of inv_bar_cor and dac.\n\ninstitution :\n\nLEGOS/CNES/CLS\n\nlong_name :\n\ndynamic atmospheric correction\n\nsource :\n\nMOG2D\n\nunits :\n\nm\n\nvalid_max :\n\n12000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndepth_or_elevation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOcean depth or land elevation above reference ellipsoid. Ocean depth (bathymetry) is given as negative values, and land elevation positive values.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\nocean depth or land elevation\n\nsource :\n\nAltimeter Corrected Elevations, version 2\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-12000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndistance_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate distance to the nearest coast point along the Earth surface.\n\ninstitution :\n\nEuropean Space Agency\n\nlong_name :\n\ndistance to coast\n\nsource :\n\nMODIS/GlobCover\n\nunits :\n\nm\n\nvalid_max :\n\n21000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ndoppler_centroid\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDoppler centroid (in hertz or cycles per second) estimated by KaRIn.\n\nlong_name :\n\ndoppler centroid estimated by KaRIn\n\nunits :\n\n1/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\ndynamic_ice_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nDynamic ice flag for the location of the KaRIn measurement.\n\nflag_meanings :\n\nno_ice probable_ice ice\n\nflag_values :\n\n[0, 1, 2]\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\ndynamic ice flag\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ngeoid\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeoid height above the reference ellipsoid with a correction to refer the value to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\nlong_name :\n\ngeoid height\n\nsource :\n\nEGM2008 (Pavlis et al., 2012)\n\nstandard_name :\n\ngeoid_height_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nheading_to_coast\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nApproximate compass heading (0-360 degrees with respect to true north) to the nearest coast point.\n\nlong_name :\n\nheading to coast\n\nunits :\n\ndegrees\n\nvalid_max :\n\n35999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nheight_cor_xover\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight correction from KaRIn crossover calibration. To apply this correction the value of height_cor_xover should be added to the value of ssh_karin, ssh_karin_2, ssha_karin, and ssha_karin_2.\n\nlong_name :\n\nheight correction from KaRIn crossovers\n\nunits :\n\nm\n\nvalid_max :\n\n100000\n\nvalid_min :\n\n-100000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nice_conc\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nConcentration of sea ice from model.\n\ninstitution :\n\nEUMETSAT\n\nlong_name :\n\nconcentration of sea ice\n\nsource :\n\nEUMETSAT Ocean and Sea Ice Satellite Applications Facility\n\nstandard_name :\n\nsea_ice_area_fraction\n\nunits :\n\n%\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ninternal_tide_hret\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal ocean tide. This value is subtracted from the ssh_karin and ssh_karin_2 to compute ssha_karin and ssha_karin_2, respectively.\n\nlong_name :\n\ncoherent internal tide (HRET)\n\nsource :\n\nZaron (2019)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ninternal_tide_sol2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nCoherent internal tide.\n\nlong_name :\n\ncoherent internal tide (Model 2)\n\nsource :\n\nTBD\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ninv_bar_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEstimate of static effect of atmospheric pressure on sea surface height. Above average pressure lowers sea surface height. Computed by interpolating ECMWF pressure fields in space and time. The value is included in dac. To apply, add dac to ssha_karin and ssha_karin_2 and subtract inv_bar_cor.\n\nlong_name :\n\nstatic inverse barometer effect on sea surface height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\niono_cor_gim_ka\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to ionosphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nJPL\n\nlong_name :\n\nionosphere vertical correction\n\nsource :\n\nGlobal Ionosphere Maps\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-5000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlatitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLatitude of measurement [-80,80]. Positive latitude is North latitude, negative latitude is South latitude. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average latitude of samples used to compute SSH\n\nstandard_name :\n\nlatitude\n\nunits :\n\ndegrees_north\n\nvalid_max :\n\n80000000\n\nvalid_min :\n\n-80000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nload_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_fes).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric load tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nload_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric load tide height. The effect of the ocean tide loading of the Earth's crust. This value has already been added to the corresponding ocean tide height value (ocean_tide_got).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric load tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nlongitude_avg_ssh\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nLongitude of measurement. East longitude relative to Greenwich meridian. This value may be biased away from a nominal grid location if some of the native, unsmoothed samples were discarded during processing.\n\nlong_name :\n\nweighted average longitude of samples used to compute SSH\n\nstandard_name :\n\nlongitude\n\nunits :\n\ndegrees_east\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_dynamic_topography\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean dynamic topography above the geoid.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography\n\nsource :\n\nCNES_CLS_18\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_dynamic_topography_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean dynamic topography.\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean dynamic topography accuracy\n\nsource :\n\nCNES_CLS_18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height (CNES/CLS)\n\nsource :\n\nCNES_CLS_15\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_cnescls_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_cnescls).\n\ninstitution :\n\nCNES/CLS\n\nlong_name :\n\nmean sea surface height accuracy (CNES/CLS)\n\nsource :\n\nCNES_CLS_15\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface height above the reference ellipsoid. The value is referenced to the mean tide system, i.e. includes the permanent tide (zero frequency).\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n1500000\n\nvalid_min :\n\n-1500000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_sea_surface_dtu_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAccuracy of the mean sea surface height (mean_sea_surface_dtu)\n\ninstitution :\n\nDTU\n\nlong_name :\n\nmean sea surface height accuracy (DTU)\n\nsource :\n\nDTU18\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_wave_direction\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMean sea surface wave direction.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nmean sea surface wave direction\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nunits :\n\ndegree\n\nvalid_max :\n\n36000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmean_wave_period_t02\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface wind wave mean period from model spectral density second moment.\n\ninstitution :\n\nMeteo France\n\nlong_name :\n\nsea surface wind wave mean period\n\nsource :\n\nMeteo France Wave Model (MF-WAM)\n\nstandard_name :\n\nsea_surface_wave_significant_period\n\nunits :\n\ns\n\nvalid_max :\n\n100\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmodel_dry_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to dry troposphere delay. The reported sea surface height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ndry troposphere vertical correction\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n-15000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nmodel_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from weather model data. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin_2) results in the uncorrected sea surface height.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nwet troposphere vertical correction from weather model data\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nnum_pt_avg\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNumber of native unsmoothed, beam-combined KaRIn samples averaged.\n\nlong_name :\n\nnumber of samples averaged\n\nunits :\n\n1\n\nvalid_max :\n\n289\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nobp_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used by the KaRIn on-board processor.\n\nlong_name :\n\nheight of reference surface used by on-board-processor\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquilibrium long-period ocean tide height. This value has already been added to the corresponding ocean tide height values (ocean_tide_fes and ocean_tide_got).\n\nlong_name :\n\nequilibrium long-period ocean tide height\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_fes\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_fes) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\ngeocentric ocean tide height (FES)\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_got\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric ocean tide height. Includes the sum total of the ocean tide, the corresponding load tide (load_tide_got) and equilibrium long-period ocean tide height (ocean_tide_eq).\n\ninstitution :\n\nGSFC\n\nlong_name :\n\ngeocentric ocean tide height (GOT)\n\nsource :\n\nGOT4.10c (Ray, 2013)\n\nunits :\n\nm\n\nvalid_max :\n\n300000\n\nvalid_min :\n\n-300000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nocean_tide_non_eq\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNon-equilibrium long-period ocean tide height. This value is reported as a relative displacement with repsect to ocean_tide_eq. This value can be added to ocean_tide_eq, ocean_tide_fes, or ocean_tide_got, or subtracted from ssha_karin and ssha_karin_2, to account for the total long-period ocean tides from equilibrium and non-equilibrium contributions.\n\ninstitution :\n\nLEGOS/CNES\n\nlong_name :\n\nnon-equilibrium long-period ocean tide height\n\nsource :\n\nFES2014b (Carrere et al., 2016)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\norbit_alt_rate\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbital altitude rate with respect to the mean sea surface.\n\nlong_name :\n\norbital altitude rate with respect to mean sea surface\n\nunits :\n\nm/s\n\nvalid_max :\n\n3500\n\nvalid_min :\n\n-3500\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.49 MiB\n38.54 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\norbit_qual\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nOrbit quality flag.\n\nlong_name :\n\norbit quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n51.49 MiB\n38.54 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nphase_bias_ref_surface\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight (relative to the reference ellipsoid) of the reference surface used for phase bias calculation during L1B processing.\n\nlong_name :\n\nheight of reference surface used for phase bias calculation\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\npolarization_karin\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nobject\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nH denotes co-polarized linear horizontal, V denotes co-polarized linear vertical.\n\nlong_name :\n\npolarization for each side of the KaRIn swath\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n205.94 MiB\n154.16 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nobject\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\npole_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nGeocentric pole tide height. The total of the contribution from the solid-Earth (body) pole tide height, the ocean pole tide height, and the load pole tide height (i.e., the effect of the ocean pole tide loading of the Earth's crust).\n\nlong_name :\n\ngeocentric pole tide height\n\nsource :\n\nWahr (1985) and Desai et al. (2015)\n\nunits :\n\nm\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n-2000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nrad_cloud_liquid_water\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated cloud liquid water content from radiometer measurements.\n\nlong_name :\n\nliquid water content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_cloud_liquid_water_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n2000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_surface_type_flag\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicating the validity and type of processing applied to generate the wet troposphere correction (rad_wet_tropo_cor). A value of 0 indicates that open ocean processing is used, a value of 1 indicates coastal processing, and a value of 2 indicates that rad_wet_tropo_cor is invalid due to land contamination.\n\nflag_meanings :\n\nopen_ocean coastal_ocean land\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nradiometer surface type flag\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_tmb_187\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 18.7 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 18.7 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_tmb_238\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 23.8 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 23.8 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n13000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_tmb_340\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nMain beam brightness temperature measurement at 34.0 GHz. Value is unsmoothed (along-track averaging has not been performed).\n\nlong_name :\n\nradiometer main beam brightness temperature at 34.0 GHz\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\ntoa_brightness_temperature\n\nunits :\n\nK\n\nvalid_max :\n\n28000\n\nvalid_min :\n\n15000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_water_vapor\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nIntegrated water vapor content from radiometer measurements.\n\nlong_name :\n\nwater vapor content from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\natmosphere_water_vapor_content\n\nunits :\n\nkg/m^2\n\nvalid_max :\n\n15000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nrad_wet_tropo_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEquivalent vertical correction due to wet troposphere delay from radiometer measurements. The reported pixel height, latitude and longitude are computed after adding negative media corrections to uncorrected range along slant-range paths, accounting for the differential delay between the two KaRIn antennas. The equivalent vertical correction is computed by applying obliquity factors to the slant-path correction. Adding the reported correction to the reported sea surface height (ssh_karin) results in the uncorrected sea surface height.\n\nlong_name :\n\nwet troposphere vertical correction from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nrain_flag\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFlag indicates that signal is attenuated, probably from rain.\n\nflag_meanings :\n\nno_rain probable_rain rain\n\nflag_values :\n\n[0, 1, 2]\n\nlong_name :\n\nrain flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n2\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nrain_rate\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRain rate from weather model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nrain rate from weather model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\nmm/hr\n\nvalid_max :\n\n200\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsc_altitude\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAltitude of the KMSF origin.\n\nlong_name :\n\naltitude of KMSF origin\n\nstandard_name :\n\nheight_above_reference_ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n2000000000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsc_pitch\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude pitch angle; positive values move the KMSF +x axis up.\n\nlong_name :\n\npitch of the spacecraft\n\nstandard_name :\n\nplatform_pitch_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsc_roll\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude roll angle; positive values move the +y antenna down.\n\nlong_name :\n\nroll of the spacecraft\n\nstandard_name :\n\nplatform_roll_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsc_yaw\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nKMSF attitude yaw angle relative to the nadir track. The yaw angle is a right-handed rotation about the nadir (downward) direction. A yaw value of 0 deg indicates that the KMSF +x axis is aligned with the horizontal component of the Earth-relative velocity vector. A yaw value of 180 deg indicates that the spacecraft is in a yaw-flipped state, with the KMSF -x axis aligned with the horizontal component of the Earth-relative velocity vector.\n\nlong_name :\n\nyaw of the spacecraft\n\nstandard_name :\n\nplatform_yaw_angle\n\nunits :\n\ndegrees\n\nvalid_max :\n\n1800000\n\nvalid_min :\n\n-1799999\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nsea_state_bias_cor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction to ssh_karin. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction to height\n\nsource :\n\nTBD\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsea_state_bias_cor_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea state bias correction to ssh_karin_2. Adding the reported correction to the reported sea surface height results in the uncorrected sea surface height. The wind_speed_karin_2 value is used to compute this quantity.\n\nlong_name :\n\nsea state bias correction to height\n\nsource :\n\nTBD\n\nunits :\n\nm\n\nvalid_max :\n\n0\n\nvalid_min :\n\n-6000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_cor_atmos_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from weather model data as a linear power multiplier (not decibels). sig0_cor_atmos_model is already applied in computing sig0_karin_2.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_cor_atmos_rad\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAtmospheric correction to sigma0 from radiometer data as a linear power multiplier (not decibels). sig0_cor_atmos_rad is already applied in computing sig0_karin.\n\nlong_name :\n\ntwo-way atmospheric correction to sigma0 from radiometer data\n\nsource :\n\nAdvanced Microwave Radiometer\n\nunits :\n\n1\n\nvalid_max :\n\n10.0\n\nvalid_min :\n\n1.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. Radiometer measurements provide the atmospheric attenuation (sig0_cor_atmos_rad).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNormalized radar cross section (sigma0) from KaRIn in real, linear units (not decibels). The value may be negative due to noise subtraction. The value is corrected for instrument calibration and atmospheric attenuation. A meteorological model provides the atmospheric attenuation (sig0_cor_atmos_model).\n\nlong_name :\n\nnormalized radar cross section (sigma0) from KaRIn\n\nstandard_name :\n\nsurface_backwards_scattering_coefficient_of_radar_wave\n\nunits :\n\n1\n\nvalid_max :\n\n10000000.0\n\nvalid_min :\n\n-1000.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for sigma0 from KaRIn.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nquality flag for sigma0 from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsig0_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on sigma0 from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on sigma0 from KaRIn\n\nunits :\n\n1\n\nvalid_max :\n\n1000.0\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_baseline_dilation\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to baseline mast dilation\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nKaRIn error\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_orbital\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to orbital perturbations\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_phase\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to phase\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_roll\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nError due to roll\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_error_timing\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nlong_name :\n\nTiming error\n\nunits :\n\nm\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsimulated_true_ssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nHeight of the sea surface free of measurement errors.\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nsolid_earth_tide\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSolid-Earth (body) tide height. The zero-frequency permanent tide component is not included.\n\nlong_name :\n\nsolid Earth tide height\n\nsource :\n\nCartwright and Taylor (1971) and Cartwright and Edden (1973)\n\nunits :\n\nm\n\nvalid_max :\n\n10000\n\nvalid_min :\n\n-10000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using radiometer measurements for wet troposphere effects on the KaRIn measurement (e.g., rad_wet_tropo_cor and sea_state_bias_cor).\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssh_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nFully corrected sea surface height measured by KaRIn. The height is relative to the reference ellipsoid defined in the global attributes. This value is computed using model-based estimates for wet troposphere effects on the KaRIn measurement (e.g., model_wet_tropo_cor and sea_state_bias_cor_2).\n\nlong_name :\n\nsea surface height\n\nstandard_name :\n\nsea surface height above reference ellipsoid\n\nunits :\n\nm\n\nvalid_max :\n\n150000000\n\nvalid_min :\n\n-15000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on the sea surface height from the KaRIn measurement.\n\nlong_name :\n\nsea surface height anomaly uncertainty\n\nunits :\n\nm\n\nvalid_max :\n\n60000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssha_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssha_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSea surface height anomaly from the KaRIn measurement = ssh_karin_2 - mean_sea_surface_cnescls - solid_earth_tide - ocean_tide_fes – internal_tide_hret - pole_tide - dac.\n\nlong_name :\n\nsea surface height anomaly\n\nunits :\n\nm\n\nvalid_max :\n\n1000000\n\nvalid_min :\n\n-1000000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nssha_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for the SSHA from KaRIn.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nsea surface height quality flag\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from KaRIn volumetric correlation.\n\nlong_name :\n\nsignificant wave height from KaRIn\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_karin_qual\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nQuality flag for significant wave height from KaRIn.\n\nflag_meanings :\n\ngood bad\n\nflag_values :\n\n[0, 1]\n\nlong_name :\n\nquality flag for significant wave height from KaRIn.\n\nstandard_name :\n\nstatus_flag\n\nvalid_max :\n\n1\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n7.14 GiB\n5.34 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_karin_uncert\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\n1-sigma uncertainty on significant wave height from KaRIn.\n\nlong_name :\n\n1-sigma uncertainty on significant wave height from KaRIn\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_model\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height from model.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nsignificant wave height from wave model\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nsea_surface_wave_significant_height\n\nunits :\n\nm\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nswh_sea_state_bias\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nSignificant wave height used in sea state bias correction.\n\nlong_name :\n\nSWH used in sea state bias correction\n\nunits :\n\nm\n\nvalid_max :\n\n25000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\ntime\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncalendar :\n\ngregorian\n\ncomment :\n\nTime of measurement in seconds in the UTC time scale since 1 Jan 2000 00:00:00 UTC. [tai_utc_difference] is the difference between TAI and UTC reference time (seconds) for the first measurement of the data set. If a leap second occurs within the data set, the attribute leap_second is set to the UTC time at which the leap second occurs.\n\nleap_second :\n\nYYYY-MM-DDThh:mm:ssZ\n\nlong_name :\n\ntime in UTC\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n35.0\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\ntime_tai\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncalendar :\n\ngregorian\n\ncomment :\n\nTime of measurement in seconds in the TAI time scale since 1 Jan 2000 00:00:00 TAI. This time scale contains no leap seconds. The difference (in seconds) with time in UTC is given by the attribute [time:tai_utc_difference].\n\nlong_name :\n\ntime in TAI\n\nstandard_name :\n\ntime\n\ntai_utc_difference :\n\n[Value of TAI-UTC at time of first record]\n\nunits :\n\nseconds since 2000-01-01 00:00:00.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nvelocity_heading\n\n\n(cycle_num, pass_num, num_lines)\n\n\nfloat64\n\n\ndask.array<chunksize=(1, 1, 9866), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nAngle with respect to true north of the horizontal component of the spacecraft Earth-relative velocity vector. A value of 90 deg indicates that the spacecraft velocity vector pointed due east. Values between 0 and 90 deg indicate that the velocity vector has a northward component, and values between 90 and 180 deg indicate that the velocity vector has a southward component.\n\nlong_name :\n\nheading of the spacecraft Earth-relative velocity vector\n\nunits :\n\ndegrees\n\nvalid_max :\n\n359999999\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866)\n(1, 1, 9866)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat64\nnumpy.ndarray\n\n\n\n\n 9866 456 3\n\n\n\n\n\n\n\n\nwind_speed_karin\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin.\n\nlong_name :\n\nwind speed from KaRIn\n\nsource :\n\nTBD\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_karin_2\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from KaRIn computed from sig0_karin_2.\n\nlong_name :\n\nwind speed from KaRIn\n\nsource :\n\nTBD\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_model_u\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nEastward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nu component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\neastward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_model_v\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nNorthward component of the atmospheric model wind vector at 10 meters.\n\ninstitution :\n\nECMWF\n\nlong_name :\n\nv component of model wind\n\nsource :\n\nEuropean Centre for Medium-Range Weather Forecasts\n\nstandard_name :\n\nnorthward_wind\n\nunits :\n\nm/s\n\nvalid_max :\n\n30000\n\nvalid_min :\n\n-30000\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\n\n\nwind_speed_rad\n\n\n(cycle_num, pass_num, num_lines, num_sides)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 2), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nWind speed from radiometer measurements.\n\nlong_name :\n\nwind speed from radiometer\n\nsource :\n\nAdvanced Microwave Radiometer\n\nstandard_name :\n\nwind_speed\n\nunits :\n\nm/s\n\nvalid_max :\n\n65000\n\nvalid_min :\n\n0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n102.97 MiB\n77.08 kiB\n\n\nShape\n(3, 456, 9866, 2)\n(1, 1, 9866, 2)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 2 9866 456\n\n\n\n\n\n\n\n\nx_factor\n\n\n(cycle_num, pass_num, num_lines, num_pixels)\n\n\nfloat32\n\n\ndask.array<chunksize=(1, 1, 9866, 71), meta=np.ndarray>\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\ncomment :\n\nRadiometric calibration X factor as a linear power ratio.\n\nlong_name :\n\nradiometric calibration X factor as a composite value for the X factors of the +y and -y channels\n\nunits :\n\n1\n\nvalid_max :\n\n1.0000000200408773e+20\n\nvalid_min :\n\n0.0\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nArray\nChunk\n\n\n\n\nBytes\n3.57 GiB\n2.67 MiB\n\n\nShape\n(3, 456, 9866, 71)\n(1, 1, 9866, 71)\n\n\nCount\n1369 Tasks\n1368 Chunks\n\n\nType\nfloat32\nnumpy.ndarray\n\n\n\n\n 3 1 71 9866 456\n\n\n\n\n\n\nAttributes: (32)Conventions :CF-1.7contact :CNES aviso@altimetry.fr, JPL podaac@podaac.jpl.nasa.govcycle_number :5ellipsoid_flattening :0.003352810664781205ellipsoid_semi_major_axis :6378137.0equator_longitude :206.06188772087626equator_time :2014-07-24T09:52:36.962185Zgeospatial_lat_max :78.29189230598696geospatial_lat_min :-78.29203183241484geospatial_lon_max :289.6585533138908geospatial_lon_min :122.7028213028531history :2021-09-10 10:00:06Z : Creationinstitution :CNES/JPLleft_first_latitude :-77.032982418125left_first_longitude :122.7028213028531left_last_latitude :78.29189230598696left_last_longitude :289.65746162390826orbit_solution :POEpass_number :545platform :SWOTproduct_version :1.1.0.dev33reference_document :D-56407_SWOT_Product_Description_L2_LR_SSHreferences :Gaultier, L., C. Ubelmann, and L.-L. Fu, 2016: The Challenge of Using Future SWOT Data for Oceanic Field Reconstruction. J. Atmos. Oceanic Technol., 33, 119-126, doi:10.1175/jtech-d-15-0160.1. http://dx.doi.org/10.1175/JTECH-D-15-0160.1.right_first_latitude :-78.29203183241484right_first_longitude :122.70935482261133right_last_latitude :77.03284214129418right_last_longitude :289.6585533138908source :Simulate producttime_coverage_end :2014-07-24T10:18:18.533147Ztime_coverage_start :2014-07-24T09:26:52.109265Ztitle :Level 2 Low Rate Sea Surface Height Data Product - Expert SSH with Wind and Wavewavelength :0.008385803020979", "crumbs": [ "Advanced Cloud", "Kerchunk" @@ -5692,7 +5692,7 @@ "href": "external/Introduction_to_xarray.html", "title": "Xarray", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from NASA Openscapes 2021 Cloud Hackathon Repository" + "text": "imported on: 2024-06-03\nThis notebook is from NASA Openscapes 2021 Cloud Hackathon Repository" }, { "objectID": "external/Introduction_to_xarray.html#why-do-we-need-xarray", @@ -5827,7 +5827,7 @@ "href": "external/ECCO_cloud_direct_access_s3.html", "title": "Direct Access to ECCO V4r4 Datasets in the Cloud", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, ECCO.", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, ECCO.", "crumbs": [ "Tutorials", "Dataset Specific", @@ -5866,7 +5866,7 @@ "href": "external/zarr-eosdis-store.html", "title": "Zarr Example", "section": "", - "text": "imported on: 2024-05-30\n\nThis notebook is from NASA’s Zarr EOSDIS store notebook\n\n\nThe original source for this document is https://github.com/nasa/zarr-eosdis-store/blob/main/presentation/example.ipynb\n\n\nzarr-eosdis-store example\nInstall dependencies\n\nimport sys\n\n# zarr and zarr-eosdis-store, the main libraries being demoed\n!{sys.executable} -m pip install zarr zarr-eosdis-store\n\n# Notebook-specific libraries\n!{sys.executable} -m pip install matplotlib\n\nImportant: To run this, you must first create an Earthdata Login account (https://urs.earthdata.nasa.gov) and place your credentials in ~/.netrc e.g.:\n machine urs.earthdata.nasa.gov login YOUR_USER password YOUR_PASSWORD\nNever share or commit your password / .netrc file!\nBasic usage. After these lines, we work with ds as though it were a normal Zarr dataset\n\nimport zarr\nfrom eosdis_store import EosdisStore\n\nurl = 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210715090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc'\n\nds = zarr.open(EosdisStore(url))\n\nView the file’s variable structure\n\nprint(ds.tree())\n\n/\n ├── analysed_sst (1, 17999, 36000) int16\n ├── analysis_error (1, 17999, 36000) int16\n ├── dt_1km_data (1, 17999, 36000) int16\n ├── lat (17999,) float32\n ├── lon (36000,) float32\n ├── mask (1, 17999, 36000) int16\n ├── sea_ice_fraction (1, 17999, 36000) int16\n ├── sst_anomaly (1, 17999, 36000) int16\n └── time (1,) int32\n\n\nFetch the latitude and longitude arrays and determine start and end indices for our area of interest. In this case, we’re looking at the Great Lakes, which have a nice, recognizeable shape. Latitudes 41 to 49, longitudes -93 to 76.\n\nlats = ds['lat'][:]\nlons = ds['lon'][:]\nlat_range = slice(lats.searchsorted(41), lats.searchsorted(49))\nlon_range = slice(lons.searchsorted(-93), lons.searchsorted(-76))\n\nGet the analysed sea surface temperature variable over our area of interest and apply scale factor and offset from the file metadata. In a future release, scale factor and add offset will be automatically applied.\n\nvar = ds['analysed_sst']\nanalysed_sst = var[0, lat_range, lon_range] * var.attrs['scale_factor'] + var.attrs['add_offset']\n\nDraw a pretty picture\n\nfrom matplotlib import pyplot as plt\n\nplt.rcParams[\"figure.figsize\"] = [16, 8]\nplt.imshow(analysed_sst[::-1, :])\nNone\n\n\n\n\n\n\n\n\nIn a dozen lines of code and a few seconds, we have managed to fetch and visualize the 3.2 megabyte we needed from a 732 megabyte file using the original archive URL and no processing services", + "text": "imported on: 2024-06-03\n\nThis notebook is from NASA’s Zarr EOSDIS store notebook\n\n\nThe original source for this document is https://github.com/nasa/zarr-eosdis-store/blob/main/presentation/example.ipynb\n\n\nzarr-eosdis-store example\nInstall dependencies\n\nimport sys\n\n# zarr and zarr-eosdis-store, the main libraries being demoed\n!{sys.executable} -m pip install zarr zarr-eosdis-store\n\n# Notebook-specific libraries\n!{sys.executable} -m pip install matplotlib\n\nImportant: To run this, you must first create an Earthdata Login account (https://urs.earthdata.nasa.gov) and place your credentials in ~/.netrc e.g.:\n machine urs.earthdata.nasa.gov login YOUR_USER password YOUR_PASSWORD\nNever share or commit your password / .netrc file!\nBasic usage. After these lines, we work with ds as though it were a normal Zarr dataset\n\nimport zarr\nfrom eosdis_store import EosdisStore\n\nurl = 'https://archive.podaac.earthdata.nasa.gov/podaac-ops-cumulus-protected/MUR-JPL-L4-GLOB-v4.1/20210715090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.nc'\n\nds = zarr.open(EosdisStore(url))\n\nView the file’s variable structure\n\nprint(ds.tree())\n\n/\n ├── analysed_sst (1, 17999, 36000) int16\n ├── analysis_error (1, 17999, 36000) int16\n ├── dt_1km_data (1, 17999, 36000) int16\n ├── lat (17999,) float32\n ├── lon (36000,) float32\n ├── mask (1, 17999, 36000) int16\n ├── sea_ice_fraction (1, 17999, 36000) int16\n ├── sst_anomaly (1, 17999, 36000) int16\n └── time (1,) int32\n\n\nFetch the latitude and longitude arrays and determine start and end indices for our area of interest. In this case, we’re looking at the Great Lakes, which have a nice, recognizeable shape. Latitudes 41 to 49, longitudes -93 to 76.\n\nlats = ds['lat'][:]\nlons = ds['lon'][:]\nlat_range = slice(lats.searchsorted(41), lats.searchsorted(49))\nlon_range = slice(lons.searchsorted(-93), lons.searchsorted(-76))\n\nGet the analysed sea surface temperature variable over our area of interest and apply scale factor and offset from the file metadata. In a future release, scale factor and add offset will be automatically applied.\n\nvar = ds['analysed_sst']\nanalysed_sst = var[0, lat_range, lon_range] * var.attrs['scale_factor'] + var.attrs['add_offset']\n\nDraw a pretty picture\n\nfrom matplotlib import pyplot as plt\n\nplt.rcParams[\"figure.figsize\"] = [16, 8]\nplt.imshow(analysed_sst[::-1, :])\nNone\n\n\n\n\n\n\n\n\nIn a dozen lines of code and a few seconds, we have managed to fetch and visualize the 3.2 megabyte we needed from a 732 megabyte file using the original archive URL and no processing services", "crumbs": [ "Tutorials", "Cloud Optimized Examples", @@ -5878,7 +5878,7 @@ "href": "external/VisualizeDopplerScattData.html", "title": "S-MODE Workshop: Science Case Study Airborne Part 2", "section": "", - "text": "imported on: 2024-05-30\nThis notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop\n%load_ext autoreload\n%autoreload 2\nimport sys\nsys.path.append('../src')\nfrom matplotlib import pyplot as plt\n%matplotlib inline\nfrom pathlib import Path\nimport numpy as np\nimport rioxarray\nimport xarray as xr\nfrom plot_dopplerscatt_data import make_streamplot_image\nimport warnings\nwarnings.simplefilter('ignore')", + "text": "imported on: 2024-06-03\nThis notebook is from a different repository in NASA’s PO.DAAC, 2022-SMODE-Open-Data-Workshop\n%load_ext autoreload\n%autoreload 2\nimport sys\nsys.path.append('../src')\nfrom matplotlib import pyplot as plt\n%matplotlib inline\nfrom pathlib import Path\nimport numpy as np\nimport rioxarray\nimport xarray as xr\nfrom plot_dopplerscatt_data import make_streamplot_image\nimport warnings\nwarnings.simplefilter('ignore')", "crumbs": [ "Tutorials", "Dataset Specific", diff --git a/sitemap.xml b/sitemap.xml index a1c80311..1c13b1dc 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -2,450 +2,450 @@ https://podaac.github.io/tutorials/external/ECCO_download_data.html - 2024-05-30T21:23:38.676Z + 2024-06-03T22:12:48.187Z https://podaac.github.io/tutorials/external/access-cloud-python.html - 2024-05-30T21:23:38.816Z + 2024-06-03T22:12:48.323Z https://podaac.github.io/tutorials/external/access-local-opendap.html - 2024-05-30T21:23:39.076Z + 2024-06-03T22:12:48.543Z https://podaac.github.io/tutorials/external/insitu_dataviz_demo.html - 2024-05-30T21:23:38.120Z + 2024-06-03T22:12:47.787Z https://podaac.github.io/tutorials/external/access-local-python.html - 2024-05-30T21:23:38.952Z + 2024-06-03T22:12:48.467Z https://podaac.github.io/tutorials/external/SWOT_SSH_dashboard.html - 2024-05-30T21:23:43.908Z + 2024-06-03T22:12:52.427Z https://podaac.github.io/tutorials/external/Downloader.html - 2024-05-30T21:23:39.684Z + 2024-06-03T22:12:49.011Z https://podaac.github.io/tutorials/external/read_data.html - 2024-05-30T21:23:39.536Z + 2024-06-03T22:12:48.843Z https://podaac.github.io/tutorials/external/cof-zarr-reformat.html - 2024-05-30T21:23:34.824Z + 2024-06-03T22:12:45.155Z https://podaac.github.io/tutorials/external/Subscriber.html - 2024-05-30T21:23:39.812Z + 2024-06-03T22:12:49.087Z https://podaac.github.io/tutorials/external/zarr_access.html - 2024-05-30T21:23:35.136Z + 2024-06-03T22:12:45.507Z https://podaac.github.io/tutorials/quarto_text/Tutorials.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Advanced.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Questions.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/SMODE.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/DataSubscriberDownloader.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Sentinel6MF.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/HowTo.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/CloudvsLocalWorkflows.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/TechGuides.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/GHRSST.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/OPERA.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/ECCO.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/notebooks/Pre-SWOT_Numerical_Simulation_Demo.html - 2024-05-30T21:23:03.292Z + 2024-06-03T22:12:07.411Z https://podaac.github.io/tutorials/notebooks/s3/S3-Access.html - 2024-05-30T21:23:03.764Z + 2024-06-03T22:12:07.879Z https://podaac.github.io/tutorials/notebooks/Advanced_cloud/basic_dask.html - 2024-05-30T21:23:03.172Z + 2024-06-03T22:12:07.291Z https://podaac.github.io/tutorials/notebooks/DataStories/eof_example_ersst.html - 2024-05-30T21:23:03.256Z + 2024-06-03T22:12:07.375Z https://podaac.github.io/tutorials/notebooks/GIS/SWOT_datetime_GIS.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/GIS/Subscriber_nc_to_tif_SWOT.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/GIS/GDAL_NetCDF_GeoTIFF.html - 2024-05-30T21:23:03.256Z + 2024-06-03T22:12:07.375Z https://podaac.github.io/tutorials/notebooks/harmony subsetting/Harmony L2 Subsetter.html - 2024-05-30T21:23:03.648Z + 2024-06-03T22:12:07.771Z https://podaac.github.io/tutorials/notebooks/SWORD_River_Demo.html - 2024-05-30T21:23:03.292Z + 2024-06-03T22:12:07.411Z https://podaac.github.io/tutorials/notebooks/SearchDownload_SWOTviaCMR.html - 2024-05-30T21:23:03.296Z + 2024-06-03T22:12:07.415Z https://podaac.github.io/tutorials/notebooks/Tutorials_TEMPLATE.html - 2024-05-30T21:23:03.296Z + 2024-06-03T22:12:07.415Z https://podaac.github.io/tutorials/notebooks/aws_lambda_sst/podaac-lambda-invoke-sst-global-mean.html - 2024-05-30T21:23:03.304Z + 2024-06-03T22:12:07.423Z https://podaac.github.io/tutorials/notebooks/Cloud L2SS subset and plot - JH.html - 2024-05-30T21:23:03.176Z + 2024-06-03T22:12:07.295Z https://podaac.github.io/tutorials/notebooks/SWOT-EA-2021/Estuary_explore_inCloud_zarr.html - 2024-05-30T21:23:03.296Z + 2024-06-03T22:12:07.415Z https://podaac.github.io/tutorials/notebooks/sentinel-6/S6_Cloud_Notebook.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/notebooks/batch_download_podaac_data.html - 2024-05-30T21:23:03.304Z + 2024-06-03T22:12:07.423Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/workshop_osm_2022/Cloud_DirectDownload_AmazonRiver_Estuary_Exploration.html - 2024-05-30T21:23:03.748Z + 2024-06-03T22:12:07.867Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/workshop_osm_2022/ECCO_ssh_sst_corr.html - 2024-05-30T21:23:03.752Z + 2024-06-03T22:12:07.867Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/swot_ea_workshop_sept2022/SWOTHR_s3Access.html - 2024-05-30T21:23:03.716Z + 2024-06-03T22:12:07.835Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Local.html - 2024-05-30T21:23:03.664Z + 2024-06-03T22:12:07.783Z https://podaac.github.io/tutorials/notebooks/harmony_concatenation/Harmony_Concatenation.html - 2024-05-30T21:23:03.652Z + 2024-06-03T22:12:07.771Z https://podaac.github.io/tutorials/notebooks/PODAAC_Data_Subscriber.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/PODAAC_CMR_Shapefile_Search_MODIS_UAT.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/datasets/Hydrocron_SWOT_timeseries_examples.html - 2024-05-30T21:23:03.340Z + 2024-06-03T22:12:07.459Z https://podaac.github.io/tutorials/notebooks/datasets/OPERA_GIS_Cloud.html - 2024-05-30T21:23:03.388Z + 2024-06-03T22:12:07.507Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_Raster_Notebook_local.html - 2024-05-30T21:23:03.612Z + 2024-06-03T22:12:07.731Z https://podaac.github.io/tutorials/notebooks/datasets/SWOTHR_s3Access.html - 2024-05-30T21:23:03.452Z + 2024-06-03T22:12:07.571Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_Raster_Notebook_cloud.html - 2024-05-30T21:23:03.560Z + 2024-06-03T22:12:07.679Z https://podaac.github.io/tutorials/notebooks/datasets/Localmachine_SWOT_Oceanography.html - 2024-05-30T21:23:03.340Z + 2024-06-03T22:12:07.463Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE.html - 2024-05-30T21:23:03.456Z + 2024-06-03T22:12:07.575Z https://podaac.github.io/tutorials/notebooks/datasets/DirectCloud_Access_SWOT_Oceanography.html - 2024-05-30T21:23:03.308Z + 2024-06-03T22:12:07.427Z https://podaac.github.io/tutorials/notebooks/datasets/OPERA_GIS_Notebook.html - 2024-05-30T21:23:03.396Z + 2024-06-03T22:12:07.515Z https://podaac.github.io/tutorials/notebooks/Harmony API.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/index.html - 2024-05-30T21:23:03.168Z + 2024-06-03T22:12:07.291Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges_plot_all.html - 2024-05-30T21:23:03.456Z + 2024-06-03T22:12:07.575Z https://podaac.github.io/tutorials/notebooks/datasets/smap_imerg_tutorial.html - 2024-05-30T21:23:03.648Z + 2024-06-03T22:12:07.767Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_gauges.html - 2024-05-30T21:23:03.456Z + 2024-06-03T22:12:07.575Z https://podaac.github.io/tutorials/notebooks/datasets/OISSS_L4_multimission_monthly_v1.html - 2024-05-30T21:23:03.380Z + 2024-06-03T22:12:07.503Z https://podaac.github.io/tutorials/notebooks/datasets/SWOTHR_localmachine.html - 2024-05-30T21:23:03.420Z + 2024-06-03T22:12:07.539Z https://podaac.github.io/tutorials/notebooks/datasets/MUR_SST_Washington_Comparison.html - 2024-05-30T21:23:03.376Z + 2024-06-03T22:12:07.495Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_quality_flag_demo.html - 2024-05-30T21:23:03.612Z + 2024-06-03T22:12:07.731Z https://podaac.github.io/tutorials/notebooks/datasets/enso_MUR_tutorial_final.html - 2024-05-30T21:23:03.624Z + 2024-06-03T22:12:07.743Z https://podaac.github.io/tutorials/notebooks/datasets/SWOT_L4_DAWG_SOS_DISCHARGE_visualize.html - 2024-05-30T21:23:03.460Z + 2024-06-03T22:12:07.579Z https://podaac.github.io/tutorials/notebooks/MODIS_L2P_SST_DataCube.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/l2-regridding/reprojection notebook.html - 2024-05-30T21:23:03.660Z + 2024-06-03T22:12:07.779Z https://podaac.github.io/tutorials/notebooks/harmony_concatenation/Harmony_Subsetting_Concatenation.html - 2024-05-30T21:23:03.660Z + 2024-06-03T22:12:07.779Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/swot_ea_hackweek_2022/HLS-WaterDetection-Cloud.html - 2024-05-30T21:23:03.664Z + 2024-06-03T22:12:07.783Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/swot_ea_hackweek_2022/River_Heights_in_the_Cloud.html - 2024-05-30T21:23:03.716Z + 2024-06-03T22:12:07.835Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/workshop_osm_2022/CloudAWS_AmazonRiver_Estuary_Exploration.html - 2024-05-30T21:23:03.732Z + 2024-06-03T22:12:07.851Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/workshop_osm_2022/S6_OPeNDAP_Access_Gridding.html - 2024-05-30T21:23:03.760Z + 2024-06-03T22:12:07.875Z https://podaac.github.io/tutorials/notebooks/meetings_workshops/arctic_2019.html - 2024-05-30T21:23:03.664Z + 2024-06-03T22:12:07.783Z https://podaac.github.io/tutorials/notebooks/sentinel-6/Access_Sentinel6_By_CyclePass.html - 2024-05-30T21:23:03.764Z + 2024-06-03T22:12:07.879Z https://podaac.github.io/tutorials/notebooks/sentinel-6/Access_Sentinel6_NRT.html - 2024-05-30T21:23:03.764Z + 2024-06-03T22:12:07.879Z https://podaac.github.io/tutorials/notebooks/SWOT-EA-2021/Colocate_satellite_insitu_ocean.html - 2024-05-30T21:23:03.296Z + 2024-06-03T22:12:07.415Z https://podaac.github.io/tutorials/notebooks/aws_lambda_sst/docs/documentation.html - 2024-05-30T21:23:03.296Z + 2024-06-03T22:12:07.415Z https://podaac.github.io/tutorials/notebooks/aws_lambda_sst/sst-global-mean-exploratory.html - 2024-05-30T21:23:03.304Z + 2024-06-03T22:12:07.423Z https://podaac.github.io/tutorials/notebooks/podaac_cmr_tutorial.html - 2024-05-30T21:23:03.764Z + 2024-06-03T22:12:07.879Z https://podaac.github.io/tutorials/notebooks/opendap/MUR-OPeNDAP.html - 2024-05-30T21:23:03.764Z + 2024-06-03T22:12:07.875Z https://podaac.github.io/tutorials/notebooks/harmony subsetting/shapefile_subset.html - 2024-05-30T21:23:03.652Z + 2024-06-03T22:12:07.771Z https://podaac.github.io/tutorials/notebooks/podaac_cmr_s3_links.html - 2024-05-30T21:23:03.764Z + 2024-06-03T22:12:07.875Z https://podaac.github.io/tutorials/notebooks/GIS/SWOT_GISshapefiles.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/GIS/MUR_SSTA_QGIS.html - 2024-05-30T21:23:03.256Z + 2024-06-03T22:12:07.375Z https://podaac.github.io/tutorials/notebooks/GIS/SWOTshp_CSVconversion.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/notebooks/DataStories/SWOTHR_Science_Application.html - 2024-05-30T21:23:03.248Z + 2024-06-03T22:12:07.367Z https://podaac.github.io/tutorials/notebooks/Advanced_cloud/dask_delayed_01.html - 2024-05-30T21:23:03.176Z + 2024-06-03T22:12:07.295Z https://podaac.github.io/tutorials/notebooks/HUC Feature Translation Service Examples-updated-20210804.html - 2024-05-30T21:23:03.288Z + 2024-06-03T22:12:07.407Z https://podaac.github.io/tutorials/quarto_text/DatasetSpecificExamples.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/SMAP.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Webinars.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/ScienceDataStories.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/cheatsheet.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Dask.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/CloudOptimizedExamples.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/SWOT.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Workshops.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/GIS.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Contribute.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/quarto_text/Experimental.html - 2024-05-30T21:23:03.768Z + 2024-06-03T22:12:07.883Z https://podaac.github.io/tutorials/external/earthdata_search.html - 2024-05-30T21:23:39.248Z + 2024-06-03T22:12:48.647Z https://podaac.github.io/tutorials/external/DownloadDopplerScattData.html - 2024-05-30T21:23:36.752Z + 2024-06-03T22:12:46.775Z https://podaac.github.io/tutorials/external/July_2022_Earthdata_Webinar.html - 2024-05-30T21:23:36.576Z + 2024-06-03T22:12:46.655Z https://podaac.github.io/tutorials/external/SWOT_to_kerchunk.html - 2024-05-30T21:23:40.080Z + 2024-06-03T22:12:49.395Z https://podaac.github.io/tutorials/external/Introduction_to_xarray.html - 2024-05-30T21:23:36.324Z + 2024-06-03T22:12:46.459Z https://podaac.github.io/tutorials/external/NASA_Earthdata_Authentication.html - 2024-05-30T21:23:02.912Z + 2024-06-03T22:12:07.035Z https://podaac.github.io/tutorials/external/Direct_S3_Access_NetCDF.html - 2024-05-30T21:23:02.872Z + 2024-06-03T22:12:06.991Z https://podaac.github.io/tutorials/external/find_data_programmatically.html - 2024-05-30T21:23:39.396Z + 2024-06-03T22:12:48.735Z https://podaac.github.io/tutorials/external/ECCO_cloud_direct_access_s3.html - 2024-05-30T21:23:38.384Z + 2024-06-03T22:12:48.003Z https://podaac.github.io/tutorials/external/zarr-eosdis-store.html - 2024-05-30T21:23:34.480Z + 2024-06-03T22:12:44.911Z https://podaac.github.io/tutorials/external/VisualizeDopplerScattData.html - 2024-05-30T21:23:37.664Z + 2024-06-03T22:12:47.491Z