Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ This is a work in progress, all contributions welcome!
| **CALAFAT2025** | Atlantic | Bayesian estimates of Atlantic meridional heat transport spanning latitudes | `read.calafat2025()` |
| **ZHENG2024** | Atlantic | Observation-based Atlantic meridional freshwater transport spanning latitudes | `read.zheng2024()` |

For more detail on the AMOC and observing arrays, see:

- UCAR overview: https://climatedataguide.ucar.edu/climate-data/observations-atlantic-meridional-overturning-circulation-amoc
- AtlantOS/OceanSITES: https://www.ocean-ops.org/oceansites/tma/index.html

## Installation

### From PyPI (Recommended)
Expand Down
16 changes: 15 additions & 1 deletion amocatlas/data_sources/calafat2025.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ def read_calafat2025(
log.info("Starting to read CALAFAT2025 dataset")

# Load YAML metadata with fallback
global_metadata, yaml_file_metadata = ReaderUtils.load_array_metadata_with_fallback(
_, yaml_file_metadata = ReaderUtils.load_array_metadata_with_fallback(
DATASOURCE_ID, CALAFAT2025_METADATA
)

Expand Down Expand Up @@ -260,6 +260,20 @@ def read_calafat2025(
}
)

# Add coordinate for posterior distribution samples
if "posterior_samples" in ds.dims:
import numpy as np

# Create coordinate from posterior_samples dimension
# Metadata will be applied from YAML during standardization
n_samples = ds.sizes["posterior_samples"]
sample_indices = np.arange(n_samples)
ds = ds.assign_coords(posterior_samples=sample_indices)

log_info(
f"Added posterior_samples coordinate with {n_samples} samples"
)

# Use ReaderUtils for consistent metadata attachment
file_metadata = CALAFAT2025_FILE_METADATA.get(nc_file, {})

Expand Down
2 changes: 0 additions & 2 deletions amocatlas/data_sources/wh41n.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,7 @@
"project": "Atlantic Meridional Overturning Circulation Near 41N from Altimetry and Argo Observations",
"weblink": "https://zenodo.org/records/18238115",
"comment": "Dataset accessed and processed via http://github.com/AMOCcommunity/amocatlas",
"acknowledgement": "This study has been conducted using E.U. Copernicus Marine Service Information; https://doi.org/10.48670/moi-00149 and https://doi.org/10.48670/moi-00148. These data were collected and made freely available by the International Argo Program and the national programs that contribute to it. (https://argo.ucsd.edu, https://www.ocean-ops.org). The Argo Program is part of the Global Ocean Observing System.",
"doi": "10.5281/zenodo.8170365",
"paper": "Willis, J. K., and Hobbs, W. R., Atlantic Meridional Overturning Circulation Near 41N from Altimetry and Argo Observations. Dataset access [2025-05-27] at 10.5281/zenodo.8170366.",
}

A41N_FILE_METADATA = {
Expand Down
6 changes: 6 additions & 0 deletions amocatlas/metadata/calafat2025.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,13 @@ files:
"latitude": LATITUDE
"mht": MHT
"htc": HTC
"posterior_samples": N_ENSEMBLE
original_variable_metadata:
posterior_samples:
long_name: realization
description: "Posterior samples of the spatiotemporal Bayesian hierarchical model used to estimate MHT. Point estimates can be calculated as the mean of the samples, while uncertainty can be quantified as the standard deviation of the samples (1 sigma) or the 5–95% credible interval (i.e. the 5th–95th percentiles)."
units: 1
standard_name: realization
time:
long_name: "Time"
description: "Time in decimal years"
Expand Down
6 changes: 3 additions & 3 deletions amocatlas/metadata/move16n.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@ metadata:
weblink: https://mooring.ucsd.edu/move/
comment: Dataset accessed and processed via http://github.com/AMOCcommunity/amocatlas
acknowledgement: >
The MOVE project is made possible with funding from the NOAA Climate Program Office under award NA15OAR4320071 and carried out by principal investigators Uwe Send and Matthias Lankhorst. Initial funding came from the German Bundesministerium fuer Bildung und Forschung. MOVE data are made freely available through the international OceanSITES program.
license: >
Data freely available. User assumes all risk for use of data. Please give due credit to the authors, project, and funding sources when using these data, e.g. by including the 'citation' text provided here.
MOVE was supported by the U.S. NOAA's Global Ocean Monitoring and Observing (GOMO) program under award NA20OAR4320278 and earlier awards. Initially, MOVE was funded by the German BMBF.
license_overwrite: CC-BY-4.0 # Based on feedback from Lankhorst on 2026-02-12
institution: Scripps Institution of Oceanography
citation: >
Send, U., Lankhorst, M., Kanzow, T.: Observation of decadal change in the Atlantic Meridional Overturning Circulation
Expand All @@ -20,6 +19,7 @@ metadata:
time_coverage_end: "2018-06-30"
date_created: "2019-01-30T18:13:16Z"
platform_type: Mooring array
references: https://dods.ndbc.noaa.gov/thredds/catalog/oceansites/DATA_GRIDDED/MOVE/catalog.html
source: >
Derived using the following files:
OceanSITES file OS_MOVE_MULTISITE_GRIDDED_TS.nc, created 2019-01-30T18:11:12Z
Expand Down
6 changes: 3 additions & 3 deletions amocatlas/metadata/wh41n.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ metadata:
weblink: https://doi.org/10.5281/zenodo.8170365
comment: Dataset accessed and processed via http://github.com/AMOCcommunity/amocatlas
citation: >
Willis, J. K., and Hobbs, W. R., Atlantic Meridional Overturning Circulation Near 41N from Altimetry and Argo Observations. Dataset accessed at 10.5281/zenodo.8170366.
Willis, J. K., and Hobbs, W. R., Atlantic Meridional Overturning Circulation Near 41N from Altimetry and Argo Observations. Dataset accessed at 10.5281/zenodo.8170365.
Comment thread
eleanorfrajka marked this conversation as resolved.
license: CC-BY-4.0 # Based on feedback from Josh Willis on 2026-02-10
Conventions: CF-1.8, ACDD-1.3
platform_type: Argo floats
Expand All @@ -23,7 +23,7 @@ files:
"Ekman (Sv)": TRANS_EKMAN
"Geos (Sv)": TRANS_GEO
"MOC (Sv)": MOC
"MHT (PW)": MHT
"MOC (PW)": MHT
original_variable_metadata:
"Ekman (Sv)":
long_name: "Ekman"
Expand All @@ -40,7 +40,7 @@ files:
description: "Meridional Overturning Volume Transport"
units: Sverdrup
standard_name: ocean_meridional_overturning_transport
"MHT (PW)":
"MOC (PW)":
long_name: "MHT"
description: "Meridional Overturning Heat Transport"
units: PW
Expand Down
2 changes: 1 addition & 1 deletion amocatlas/report.py
Original file line number Diff line number Diff line change
Expand Up @@ -737,7 +737,7 @@ def create_varcoord_table(

# Create display description: prioritize description, then add long_name in bold
if description:
if long_name and long_name != item_name and long_name != description:
if long_name and long_name != description:
display_description = f"**{long_name}**: {description}"
else:
display_description = description
Expand Down
Binary file added docs/source/_static/reports/rapid_timeseries.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
19 changes: 13 additions & 6 deletions docs/source/reports/calafat2025_report.rst
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ Dataset Statistics
^^^^^^^^^^^^^^^^^^

- **Total Variables**: 2
- **Total Coordinates**: 3
- **Dataset Size**: 47.03 MB
- **Total Coordinates**: 4
- **Dataset Size**: 47.06 MB

Coordinate Information
^^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -63,6 +63,13 @@ The following table shows information about the dataset coordinates in the stand
- -40.00
- 67.50
- 0.0%
* - *posterior_samples* → **N_ENSEMBLE**
- **realization**: Posterior samples of the spatiotemporal Bayesian hierarchical model used to estimate MHT. Point estimates can be calculated as the mean of the samples, while uncertainty can be quantified as the standard deviation of the samples (1 sigma) or the 5–95% credible interval (i.e. the 5th–95th percentiles).
- 1
- (4000,)
- 0.00
- 3999.00
- 0.0%
* - **TIME**
- Time
- datetime64[ns]
Expand Down Expand Up @@ -97,7 +104,7 @@ along with key statistics for each variable.
- 0.60
- 1.5%
* - *mht* → **MHT**
- These estimates have been computed by setting the transport at 65N equal to zero and then integrating the heat transport convergences southward. A time-mean value of 0.506 PW has been added to the transport at 60N based on estimates from the OSNAP project
- **MHT**: These estimates have been computed by setting the transport at 65N equal to zero and then integrating the heat transport convergences southward. A time-mean value of 0.506 PW has been added to the transport at 60N based on estimates from the OSNAP project
- PW
- (12, 67, 4000)
- -1.04
Expand Down Expand Up @@ -141,9 +148,9 @@ The following metadata provides comprehensive information about this dataset:
- **Processing Software**: http://github.com/AMOCcommunity/amocatlas
- **Processing Version**: v0.3.0
- **Processing Datasource\***: calafat2025
- **Variable Mapping\***: {'time': 'TIME', 'latitude': 'LATITUDE', 'mht': 'MHT', 'htc': 'HTC'}
- **Original Variable Metadata\***: [Complex metadata structure - 4 items]
- **Applied Variable Mapping**: {'mht': 'MHT', 'htc': 'HTC', 'TIME': 'TIME', 'LATITUDE': 'LATITUDE', 'MHT': 'MHT', 'HTC': 'HTC'}
- **Variable Mapping\***: {'time': 'TIME', 'latitude': 'LATITUDE', 'mht': 'MHT', 'htc': 'HTC', 'posterior_samples': 'N_ENSEMBLE'}
- **Original Variable Metadata\***: [Complex metadata structure - 5 items]
- **Applied Variable Mapping**: {'mht': 'MHT', 'htc': 'HTC', 'posterior_samples': 'N_ENSEMBLE', 'TIME': 'TIME', 'LATITUDE': 'LATITUDE', 'MHT': 'MHT', 'HTC': 'HTC'}
- **Creation Data**: 31-Jul-2025 15:14:49
- **Contact**: francisco.mcalafat@uib.eu
- **Comment On Temporal Resolution**: Estimates of heat transport are quarterly values (i.e., 3-month means: Jan-Feb-Mar, Apr-May-Jun, ...)
Expand Down
2 changes: 1 addition & 1 deletion docs/source/reports/dso_report.rst
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ The following metadata provides comprehensive information about this dataset:
- **Source Url\***: https://www.cen.uni-hamburg.de/en/icdc/data/ocean/denmark-strait-overflow.html
- **Date Created**: 2021-12-06T19:37:07Z
- **Date Modified**: 2026-02-01T00:00:00Z
- **History**: 2021-12-06T19:37:07ZOceanSITES file with provisional transport data sent to DAC by Ursula Schauer; 2026-02-11T10:39:15Z AMOCatlas: Corrupted DEPTH value in DSO_transport_hourly_1996_2021.nc marked as NaN (was 9.97e+36)
- **History**: 2021-12-06T19:37:07ZOceanSITES file with provisional transport data sent to DAC by Ursula Schauer; 2026-02-12T05:58:20Z AMOCatlas: Corrupted DEPTH value in DSO_transport_hourly_1996_2021.nc marked as NaN (was 9.97e+36)
- **Processing Software**: http://github.com/AMOCcommunity/amocatlas
- **Processing Version**: v0.3.0
- **Processing Datasource\***: dso
Expand Down
2 changes: 1 addition & 1 deletion docs/source/reports/mocha_report.rst
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ along with key statistics for each variable.
- 0.72
- 0.0%
* - *maxmoc* → **MOC**
- time-varying maximum value of MOC streamfunction
- **MOC**: time-varying maximum value of MOC streamfunction
- Sverdrup
- (12202,)
- -5.07
Expand Down
Loading