Estimating the Circulation and Climate of the Ocean (ECCO) uses the MITgcm earth model and "assimilates" millions of real-world observations—including satellite data (altimetry), Argo floats, and ship-based measurements. This creates a 3D reconstruction of the ocean.
Version 4 (1992-2018) is on NASA EarthData. There are many products in ECCO. We will look at 3 products on the 0.5 degree grid.
ECCO_L4_TEMP_SALINITY_05DEG_DAILY_V4R4: this has temperature and salinity at depths.
Note: In a virtual machine in AWS us-west-2, where NASA cloud data is, the point matchups are fast. In Colab, say, your compute is not in the same data region nor provider, and the same matchups might take 10x longer.
Prerequisites
The examples here use NASA EarthData and you need to have an account with EarthData. Make sure you can login.
importpandasaspdurl=("https://raw.githubusercontent.com/""fish-pace/point-collocation/main/""examples/fixtures/points_1000.csv")df_points=pd.read_csv(url,parse_dates=["time"])df=df_points[(df_points["time"].dt.year<2018)&(df_points["time"].dt.year>2014)&(df_points["land"]==False)].reset_index(drop=True)# Force all timestamps to noon UTC to avoid "midnight overlap" issuesdf["time"]=df["time"].dt.normalize()+pd.Timedelta(hours=12)print(len(df))df.head()
Dynamic sea surface height anomaly above the geoid, suitable for comparisons with altimetry sea surface height data products that apply the inverse barometer (IB) correction. Note: SSH is calculated by correcting model sea level anomaly ETAN for three effects: a) global mean steric sea level changes related to density changes in the Boussinesq volume-conserving model (Greatbatch correction, see sterGloH), b) the inverted barometer (IB) effect (see SSHIBC) and c) sea level displacement due to sea-ice and snow pressure loading (see sIceLoad). SSH can be compared with the similarly-named SSH variable in previous ECCO products that did not include atmospheric pressure loading (e.g., Version 4 Release 3). Use SSHNOIBC for comparisons with altimetry data products that do NOT apply the IB correction.
The inverted barometer (IB) correction to sea surface height due to atmospheric pressure loading
units :
m
comment :
Not an SSH itself, but a correction to model sea level anomaly (ETAN) required to account for the static part of sea surface displacement by atmosphere pressure loading: SSH = SSHNOIBC - SSHIBC. Note: Use SSH for model-data comparisons with altimetry data products that DO apply the IB correction and SSHNOIBC for comparisons with altimetry data products that do NOT apply the IB correction.
Sea surface height anomaly without the inverted barometer (IB) correction
units :
m
comment :
Sea surface height anomaly above the geoid without the inverse barometer (IB) correction, suitable for comparisons with altimetry sea surface height data products that do NOT apply the inverse barometer (IB) correction. Note: SSHNOIBC is calculated by correcting model sea level anomaly ETAN for two effects: a) global mean steric sea level changes related to density changes in the Boussinesq volume-conserving model (Greatbatch correction, see sterGloH), b) sea level displacement due to sea-ice and snow pressure loading (see sIceLoad). In ECCO Version 4 Release 4 the model is forced with atmospheric pressure loading. SSHNOIBC does not correct for the static part of the effect of atmosphere pressure loading on sea surface height (the so-called inverse barometer (IB) correction). Use SSH for comparisons with altimetry data products that DO apply the IB correction.
valid_min :
-2.45104718208313
valid_max :
2.2390522956848145
Array
Chunk
Bytes
0.99 MiB
0.99 MiB
Shape
(1, 360, 720)
(1, 360, 720)
Dask graph
1 chunks in 2 graph layers
Data type
float32 numpy.ndarray
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. 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.
Conventions :
CF-1.8, ACDD-1.3
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-17T01:29:07
date_issued :
2020-12-17T01:29:07
date_metadata_modified :
2021-03-15T23:12:48
date_modified :
2021-03-15T23:12:48
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 :
Inaugural release of an ECCO Central Estimate solution to PO.DAAC
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 daily-averaged dynamic sea surface height 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.
Temperature is 3D: lat, lon, depth. We will add depth to our dataframe so we can get temperature at specific depths. Depth is Z in ECCO granules and it is negative. We need to specify the additional coordinate that we are matching, beyond lat, lon, time.
Sea 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$.
Defined 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
Array
Chunk
Bytes
49.44 MiB
6.18 MiB
Shape
(1, 50, 360, 720)
(1, 25, 180, 360)
Dask graph
8 chunks in 2 graph layers
Data type
float32 numpy.ndarray
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.
Conventions :
CF-1.8, ACDD-1.3
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-18T04:15:04
date_issued :
2020-12-18T04:15:04
date_metadata_modified :
2021-03-15T23:53:01
date_modified :
2021-03-15T23:53:01
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
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 daily-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 :
P1D
time_coverage_end :
2015-01-12T00:00:00
time_coverage_resolution :
P1D
time_coverage_start :
2015-01-11T00:00:00
title :
ECCO Ocean Temperature and Salinity - Daily Mean 0.5 Degree (Version 4 Release 4)
uuid :
a8d2856a-412a-11eb-ba7a-0cc47a3f6879
Get the matchups for potential temperature
They with be 3D. Variable at 50 depths. THETA is temperature at -1000 meters, which is the depth value in our dataframe.
CPU times: user 16.4 s, sys: 1.3 s, total: 17.7 s
Wall time: 44 s
res[['lat','lon','time','depth','THETA']].head()
lat
lon
time
depth
THETA
0
-2.175441
2.168506
2017-07-02 12:00:00
-1000
4.333574
1
-16.216691
76.119033
2015-04-16 12:00:00
-1000
5.358678
2
8.500092
82.677680
2015-07-21 12:00:00
-1000
6.668801
3
-32.290881
-136.206453
2017-08-09 12:00:00
-1000
4.466073
4
-29.495688
-145.182846
2016-02-10 12:00:00
-1000
4.450537
Mixed Layer Depth
Mixed Layer Depth (MLD) is the thickness of the uppermost layer of the ocean where the water properties (temperature, salinity, and density) are nearly uniform with depth and mixed by wind. Below the MLD is the thermocline, between the MLD and roughly 1,000m, the temperature rapidly drops and density increases. Below the thermocline is the deep ocean, which is cold and dense.
Mixed-layer depth diagnosed using the temperature difference criterion of Kara et al., 2000
standard_name :
ocean_mixed_layer_thickness
units :
m
comment :
Mixed-layer depth as determined by the depth where waters are first 0.8 degrees Celsius colder than the surface. See Kara et al. (JGR, 2000). . Note: the Kara et al. criterion may not be appropriate for some applications. If needed, mixed layer depth can be calculated using different criteria. See vertical density stratification (DRHODR) and density anomaly (RHOAnoma).
valid_min :
5.000001430511475
valid_max :
5331.2001953125
Array
Chunk
Bytes
0.99 MiB
0.99 MiB
Shape
(1, 360, 720)
(1, 360, 720)
Dask graph
1 chunks in 2 graph layers
Data type
float32 numpy.ndarray
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.
Conventions :
CF-1.8, ACDD-1.3
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-17T02:27:39
date_issued :
2020-12-17T02:27:39
date_metadata_modified :
2021-03-15T23:05:46
date_modified :
2021-03-15T23:05:46
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 :
Inaugural release of an ECCO Central Estimate solution to PO.DAAC
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 daily-averaged ocean mixed layer depth 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.