{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Using the ACCESS-NRI Intake catalog as an alternative to the COSIMA Cookbook" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This notebook demonstrates how to use the ACCESS-NRI Intake catalog, and demonstrates key similarities to and differences from the cosima cookbook\n", "\n", "This notebook is concise version of the longer [ACCESS-NRI Intake catalog documentation](https://access-nri-intake-catalog.readthedocs.io/) and related [COSIMA training workshop](https://github.com/ACCESS-Hive/cosima-training-workshop-2023/blob/main/Intake.ipynb). Users are encouraged to refer to these for more detail and demonstrations. At the time of writing (Oct 2023), the ACCESS-NRI Intake Catalog is under testing and feedback from users is requested.\n", "\n", "Requirements: The `conda/analysis3` (tested on `analysis3-23.07`) module from `/g/data/hh5/public/modules`. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Too Long; Didn't Read:" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "The most commonly used method from the cosima cookbook is `querying.getvar`, e.g.:\n", "\n", "```python\n", "import cosima_cookbook as cc\n", "\n", "session = cc.database.create_session()\n", "\n", "da = cc.querying.getvar(\n", " expt=\"expt0\", \n", " variable=\"var0\", \n", " session=session, \n", " frequency=\"1 monthly\"\n", ")\n", "```\n", "\n", "Using the ACCESS-NRI Intake catalog, the same data can be obtained with:\n", "\n", "```python\n", "import intake\n", "\n", "catalog = intake.cat.access_nri\n", "\n", "ds = catalog[\"expt0\"].search(\n", " variable=\"var0\", \n", " frequency=\"1mon\"\n", ").to_dask()\n", "\n", "da=ds[var0]\n", "```" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# Start a dask Client\n", "\n", "This is not specific to using the ACCESS-NRI Intake catalog. You would do the same thing using the COSIMA cookbook." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:18.467209Z", "iopub.status.busy": "2023-11-02T02:39:18.466784Z", "iopub.status.idle": "2023-11-02T02:39:18.483935Z", "shell.execute_reply": "2023-11-02T02:39:18.482191Z", "shell.execute_reply.started": "2023-11-02T02:39:18.467161Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "from os import environ\n", "environ[\"PYTHONWARNINGS\"] = \"ignore\"" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:18.488491Z", "iopub.status.busy": "2023-11-02T02:39:18.487688Z", "iopub.status.idle": "2023-11-02T02:39:22.356349Z", "shell.execute_reply": "2023-11-02T02:39:22.355607Z", "shell.execute_reply.started": "2023-11-02T02:39:18.488448Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "
\n", "
\n", "

Client

\n", "

Client-05cb42e4-7929-11ee-b8e9-00000081fe80

\n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "
Connection method: Cluster objectCluster type: distributed.LocalCluster
\n", " Dashboard: /proxy/8787/status\n", "
\n", "\n", " \n", " \n", " \n", "\n", " \n", "
\n", "

Cluster Info

\n", "
\n", "
\n", "
\n", "
\n", "

LocalCluster

\n", "

4ed37866

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", "\n", " \n", "
\n", " Dashboard: /proxy/8787/status\n", " \n", " Workers: 12\n", "
\n", " Total threads: 12\n", " \n", " Total memory: 46.00 GiB\n", "
Status: runningUsing processes: True
\n", "\n", "
\n", " \n", "

Scheduler Info

\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", "

Scheduler

\n", "

Scheduler-25636fca-e100-49a2-8524-b01c3d44536a

\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", " Comm: tcp://127.0.0.1:33005\n", " \n", " Workers: 12\n", "
\n", " Dashboard: /proxy/8787/status\n", " \n", " Total threads: 12\n", "
\n", " Started: Just now\n", " \n", " Total memory: 46.00 GiB\n", "
\n", "
\n", "
\n", "\n", "
\n", " \n", "

Workers

\n", "
\n", "\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 0

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:35001\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/43033/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:36523\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-w1fbb7ys\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 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", " Comm: tcp://127.0.0.1:40837\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/42513/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:33585\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-3mkpe188\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 2

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:33339\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/35057/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:39157\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-f8z0vwtp\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 3

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:40069\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/43565/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:39535\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-s0edeemi\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 4

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:37503\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/39937/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:45553\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-8jrv2kn1\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 5

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:35287\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/39281/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:33729\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-me614dht\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 6

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:44341\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/43647/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:37745\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-88295g4d\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 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", " Comm: tcp://127.0.0.1:37351\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/45263/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:34769\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-im3a5mci\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 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", " Comm: tcp://127.0.0.1:36337\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/46507/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:39397\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-lqohc23n\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 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", " Comm: tcp://127.0.0.1:33167\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/35199/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:34343\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-ud7r8unv\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 10

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:44113\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/36205/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:37911\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-n6gh11a2\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
\n", "
\n", " \n", "

Worker: 11

\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n", " \n", "\n", " \n", "\n", "
\n", " Comm: tcp://127.0.0.1:46071\n", " \n", " Total threads: 1\n", "
\n", " Dashboard: /proxy/36653/status\n", " \n", " Memory: 3.83 GiB\n", "
\n", " Nanny: tcp://127.0.0.1:39849\n", "
\n", " Local directory: /jobfs/99602418.gadi-pbs/dask-scratch-space/worker-b1c4u6cm\n", "
\n", "
\n", "
\n", "
\n", " \n", "\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " \n", "\n", "
\n", "
" ], "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from dask.distributed import Client\n", "\n", "client = Client(threads_per_worker=1)\n", "client" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-10-17T05:08:26.798834Z", "iopub.status.busy": "2023-10-17T05:08:26.797949Z", "iopub.status.idle": "2023-10-17T05:08:26.815228Z", "shell.execute_reply": "2023-10-17T05:08:26.813996Z", "shell.execute_reply.started": "2023-10-17T05:08:26.798785Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# Opening and searching the catalog" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "To use the ACCESS-NRI Intake catalog, we need to import `intake`" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:22.357148Z", "iopub.status.busy": "2023-11-02T02:39:22.356980Z", "iopub.status.idle": "2023-11-02T02:39:25.196133Z", "shell.execute_reply": "2023-11-02T02:39:25.195157Z", "shell.execute_reply.started": "2023-11-02T02:39:22.357132Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "import intake\n", "import cosima_cookbook as cc # We'll also load the cookbook for comparisons later" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "We can open the catalog as follows. This is somewhat similar to starting a database session with the COSIMA cookbook. The returned object `catalog` is an instance of the ACCESS-NRI Intake catalog that we can use to find and load data." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:25.197312Z", "iopub.status.busy": "2023-11-02T02:39:25.197009Z", "iopub.status.idle": "2023-11-02T02:39:25.858743Z", "shell.execute_reply": "2023-11-02T02:39:25.857817Z", "shell.execute_reply.started": "2023-11-02T02:39:25.197294Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "catalog = intake.cat.access_nri" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "Printing the `catalog` object will return a dataframe of experiments that you can browse:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:25.859708Z", "iopub.status.busy": "2023-11-02T02:39:25.859514Z", "iopub.status.idle": "2023-11-02T02:39:25.950098Z", "shell.execute_reply": "2023-11-02T02:39:25.949379Z", "shell.execute_reply.started": "2023-11-02T02:39:25.859691Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "

access_nri catalog with 86 source(s) across 2201 rows:

\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
modeldescriptionrealmfrequencyvariable
name
01deg_jra55v13_ryf9091{ACCESS-OM2}{0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.3 RYF9091 repeat year forcing (May 1990 to Apr 1991)}{seaIce, ocean}{1mon, 3mon, fx, 1day, 3hr}{temp_submeso, average_T2, vvel_m, ty_trans_nrho_submeso, aice_m, eta_global, surface_salt, dzt, flatn_ai_m, fswup_m, sw_heat, swflx, temp_yflux_adv, sig2_m, alidf_ai_m, sfc_hflux_pme, wfiform, fm...
01deg_jra55v140_iaf{ACCESS-OM2}{Cycle 1 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{seaIce, ocean}{fx, 1mon, 1day}{average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, aice_m, eta_global, surface_salt, dzt, flatn_ai_m, fswup_m, swflx, temp_yflux_adv, alidf_ai_m, sfc_hflux_pme, wfiform, temp_int_rhodz, fme...
01deg_jra55v140_iaf_cycle2{ACCESS-OM2}{Cycle 2 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{seaIce, ocean}{fx, 1mon, 1day}{average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, aice_m, eta_global, surface_salt, dzt, flatn_ai_m, fswup_m, swflx, temp_yflux_adv, alidf_ai_m, sfc_hflux_pme, wfiform, temp_int_rhodz, fme...
01deg_jra55v140_iaf_cycle3{ACCESS-OM2}{Cycle 3 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{seaIce, ocean}{fx, 1mon, 1day}{average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, aice_m, eta_global, surface_salt, dzt, flatn_ai_m, fswup_m, swflx, temp_yflux_adv, alidf_ai_m, sfc_hflux_pme, wfiform, temp_int_rhodz, fme...
01deg_jra55v140_iaf_cycle4{ACCESS-OM2}{Cycle 4 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{seaIce, ocean}{1mon, fx, 6hr, 1day, 3hr}{average_T2, eta_nonbouss, src03, alvdr_ai, temp_yflux_adv, alidf_ai_m, det_xflux_adv, meltt, no3_intmld, uarea, total_ocean_heat, uvel_h, v, HTE, strength_m, dyt, total_ocean_pme_river, total_oce...
01deg_jra55v140_iaf_cycle4_jra55v150_extension{ACCESS-OM2}{Extensions of cycle 4 of 0.1 degree ACCESS-OM2 + WOMBAT BGC global model configuration with JRA55-do v1.5.0 and v1.5.0.1 interannual forcing}{seaIce, ocean}{subhr, fx, 1mon, 1day}{no3_zflux_adv, average_T2, src05, eta_nonbouss, vvel_m, pprod_gross_int100, ty_trans_nrho_submeso, fe_yflux_adv, albsni, aice_m, eta_global, dic, npp3d, surface_salt, npp1, src03, dzt, flatn_ai_m...
01deg_jra55v150_iaf_cycle1{ACCESS-OM2}{Cycle 1 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.5.0 OMIP2 interannual forcing}{seaIce, ocean}{fx, 1mon, 1day}{average_T2, eta_nonbouss, ty_trans_nrho_submeso, aice_m, surface_salt, dzt, swflx, wfiform, sfc_hflux_pme, temp_int_rhodz, evap, dxt, bmf_v, v, dyt, fprec, u, dyu, geolon_t, sens_heat, pme_river,...
025deg_jra55_iaf_omip2_cycle1{ACCESS-OM2}{Cycle 1/6 of 0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2019)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{temp_submeso, average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, flwup_ai_m, aice_m, eta_global, strcorx_m, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, flatn_ai_m, swflx, neutral_diffusi...
025deg_jra55_iaf_omip2_cycle2{ACCESS-OM2}{Cycle 1/6 of 0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2019)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{temp_submeso, average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, flwup_ai_m, aice_m, eta_global, strcorx_m, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, flatn_ai_m, swflx, neutral_diffusi...
025deg_jra55_iaf_omip2_cycle3{ACCESS-OM2}{Cycle 3/6 of 0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2019)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{temp_submeso, average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, flwup_ai_m, aice_m, eta_global, strcorx_m, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, flatn_ai_m, swflx, neutral_diffusi...
025deg_jra55_iaf_omip2_cycle4{ACCESS-OM2}{Cycle 4/6 of 0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2019)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{temp_submeso, average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, flwup_ai_m, aice_m, eta_global, strcorx_m, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, flatn_ai_m, swflx, neutral_diffusi...
025deg_jra55_iaf_omip2_cycle5{ACCESS-OM2}{Cycle 5/6 of 0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2019)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{temp_submeso, average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, flwup_ai_m, aice_m, eta_global, strcorx_m, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, flatn_ai_m, swflx, neutral_diffusi...
025deg_jra55_iaf_omip2_cycle6{ACCESS-OM2}{Cycle 6/6 of 0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2019)}{seaIce, ocean}{fx, 1mon, 1day}{temp_submeso, average_T2, eta_nonbouss, vvel_m, ty_trans_nrho_submeso, flwup_ai_m, aice_m, eta_global, strcorx_m, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, flatn_ai_m, swflx, neutral_diffusi...
025deg_jra55_ryf9091_gadi{ACCESS-OM2}{0.25 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.3 RYF9091 repeat year forcing (May 1990 to Apr 1991)}{seaIce, ocean}{fx, 1yr, 1mon}{average_T2, vvel_m, flwup_ai_m, aice_m, eta_global, strcorx_m, dzt, flatn_ai_m, fswup_m, alidf_ai_m, fmelttn_ai_m, total_ocean_hflux_prec, salt_surface_ave, uocn_m, dxt, daidtt_m, uarea, total_oc...
1deg_jra55_iaf_omip2_cycle1{ACCESS-OM2}{Cycle 1/6 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, eta_nonbouss, flwup_ai_m, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, H...
1deg_jra55_iaf_omip2_cycle2{ACCESS-OM2}{Cycle 2/6 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, eta_nonbouss, flwup_ai_m, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, H...
1deg_jra55_iaf_omip2_cycle3{ACCESS-OM2}{Cycle 3/6 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, eta_nonbouss, flwup_ai_m, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, H...
1deg_jra55_iaf_omip2_cycle4{ACCESS-OM2}{Cycle 4/6 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, eta_nonbouss, flwup_ai_m, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, H...
1deg_jra55_iaf_omip2_cycle5{ACCESS-OM2}{Cycle 5/6 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, eta_nonbouss, flwup_ai_m, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, H...
1deg_jra55_iaf_omip2_cycle6{ACCESS-OM2}{Cycle 6/6 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, eta_nonbouss, flwup_ai_m, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, H...
1deg_jra55_iaf_omip2spunup_cycle1{ACCESS-OM2}{Cycle 1/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, flwup_ai_m, aiso_lap, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, HTE, ...
1deg_jra55_iaf_omip2spunup_cycle10{ACCESS-OM2}{Cycle 10/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle11{ACCESS-OM2}{Cycle 11/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle12{ACCESS-OM2}{Cycle 12/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle13{ACCESS-OM2}{Cycle 13/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle14{ACCESS-OM2}{Cycle 14/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle15{ACCESS-OM2}{Cycle 15/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle16{ACCESS-OM2}{Cycle 16/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle17{ACCESS-OM2}{Cycle 17/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle18{ACCESS-OM2}{Cycle 18/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle19{ACCESS-OM2}{Cycle 19/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle2{ACCESS-OM2}{Cycle 2/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, flwup_ai_m, aiso_lap, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, HTE, ...
1deg_jra55_iaf_omip2spunup_cycle20{ACCESS-OM2}{Cycle 20/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle21{ACCESS-OM2}{Cycle 21/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle22{ACCESS-OM2}{Cycle 22/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle23{ACCESS-OM2}{Cycle 23/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle24{ACCESS-OM2}{Cycle 24/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle25{ACCESS-OM2}{Cycle 25/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle26{ACCESS-OM2}{Cycle 26/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle27{ACCESS-OM2}{Cycle 27/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle28{ACCESS-OM2}{Cycle 28/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle29{ACCESS-OM2}{Cycle 29/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle3{ACCESS-OM2}{Cycle 3/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, flwup_ai_m, aiso_lap, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, HTE, ...
1deg_jra55_iaf_omip2spunup_cycle30{ACCESS-OM2}{Cycle 30/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle31{ACCESS-OM2}{Cycle 31/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle32{ACCESS-OM2}{Cycle 32/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle33{ACCESS-OM2}{Cycle 33/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle34{ACCESS-OM2}{Cycle 34/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle35{ACCESS-OM2}{Cycle 35/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle36{ACCESS-OM2}{Cycle 36/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle37{ACCESS-OM2}{Cycle 37/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle38{ACCESS-OM2}{Cycle 38/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle39{ACCESS-OM2}{Cycle 39/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle4{ACCESS-OM2}{Cycle 4/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, flwup_ai_m, aiso_lap, neutral_diffusion_temp, temp_yflux_adv, total_volume_seawater, alidf_ai_m, mixdownslope_temp, uarea, total_ocean_heat, psiu, v, HTE, ...
1deg_jra55_iaf_omip2spunup_cycle40{ACCESS-OM2}{Cycle 40/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle41{ACCESS-OM2}{Cycle 41/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle42{ACCESS-OM2}{Cycle 42/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle43{ACCESS-OM2}{Cycle 43/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle44{ACCESS-OM2}{Cycle 44/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle45{ACCESS-OM2}{Cycle 45/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle5{ACCESS-OM2}{Cycle 5/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle6{ACCESS-OM2}{Cycle 6/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{fx, 1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, ty_trans_nrho_submeso, aice_m, eta_global, dic, salt_vdiffuse_diff_cbt_conv, fswup_m, sw_heat, aiso_lap, swflx, neutral_diffusion_temp, temp_yflux_adv, tot...
1deg_jra55_iaf_omip2spunup_cycle7{ACCESS-OM2}{Cycle 7/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon, 1day}{average_T2, vvel_m, flwup_ai_m, aice_m, eta_global, dic, strcorx_m, flatn_ai_m, fswup_m, total_volume_seawater, alidf_ai_m, fmelttn_ai_m, salt_surface_ave, dxt, daidtt_m, uarea, HTE, strength_m, ...
1deg_jra55_iaf_omip2spunup_cycle8{ACCESS-OM2}{Cycle 8/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_iaf_omip2spunup_cycle9{ACCESS-OM2}{Cycle 9/45 of 1 degree ACCESS-OM2-BGC global configuration with JRA55-do v1.4 OMIP2 spunup interannual forcing (1958-2018)}{seaIce, ocean}{1yr, 1mon}{salt_global_ave, stf09, average_T2, ANGLE, tmask, aice_m, NCAT, eta_global, sst, caco3, mld, dic, age_global, zoo, tarea, temp_surface_ave, fswup_m, adic, stf07, total_volume_seawater, alidf_ai_m...
1deg_jra55_ryf9091_gadi{ACCESS-OM2}{1 degree ACCESS-OM2 physics-only global configuration with JRA55-do v1.3 RYF9091 repeat year forcing (May 1990 to Apr 1991)}{seaIce, ocean}{fx, 1yr, 1mon}{temp_submeso, average_T2, vvel_m, ty_trans_nrho_submeso, mixdownslope_temp_on_nrho, temp_yflux_ndiffuse_on_nrho, aice_m, flwup_ai_m, eta_global, temp_yflux_submeso, temp_submeso_on_nrho, strcorx_...
HI_CN_05{ACCESS-ESM1-5}{Historical run using same configuration as CMIP6 ACCESS-ESM1.5 historical r1i1p1f1, but with phosphorus limitation disabled within CASA-CNP}{seaIce, ocean, atmos}{1mon, 6hr, 1yr, 1day, 3hr}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
HI_C_05_r1{ACCESS-ESM1-5}{Historical run using same configuration as CMIP6 ACCESS-ESM1.5 historical r1i1p1f1, but with nitrogen and phosphorus limitations disabled within CASA-CNP}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
HI_nl_C_05_r1{ACCESS-ESM1-5}{Historical run using same configuration as CMIP6 ACCESS-ESM1.5 historical r1i1p1f1, but with nitrogen and phosphorus limitations disabled within CASA-CNP, and land-use change disabled}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
HI_noluc_CN_05{ACCESS-ESM1-5}{Historical run using same configuration as CMIP6 ACCESS-ESM1.5 historical r1i1p1f1, but with phosphorus limitation disabled within CASA-CNP, and land-use change disabled}{seaIce, ocean, atmos}{1mon, 6hr, 1yr, 1day, 3hr}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
PI_GWL_B2035{ACCESS-ESM1-5}{Climate stabilization run at different global warming levels with zero C02 emissions and pre-industrial aerosols, starting in 2035 }{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
PI_GWL_B2040{ACCESS-ESM1-5}{Climate stabilization run at different global warming levels with zero C02 emissions and pre-industrial aerosols, starting in 2040}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
PI_GWL_B2045{ACCESS-ESM1-5}{Climate stabilization run at different global warming levels with zero C02 emissions and pre-industrial aerosols, starting in 2045}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
PI_GWL_B2050{ACCESS-ESM1-5}{Climate stabilization run at different global warming levels with zero C02 emissions and pre-industrial aerosols, starting in 2050}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
PI_GWL_B2055{ACCESS-ESM1-5}{Climate stabilization run at different global warming levels with zero C02 emissions and pre-industrial aerosols, starting in 2055}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
PI_GWL_B2060{ACCESS-ESM1-5}{Climate stabilization run at different global warming levels with zero C02 emissions and pre-industrial aerosols, starting in 2060}{seaIce, ocean, atmos}{1yr, 1mon, 1day}{dissicos_raw, temp_submeso, average_T2, fld_s03i851, frz_onset, fld_s03i882, power_diss_drag, fld_s03i230, fld_s03i885, fld_s03i256, temp_yflux_adv, total_volume_seawater, fld_s02i288, fld_s03i86...
bx944{ACCESS-CM2}{Standard CMIP6 historical simulation, control experiment for by473 pacemaker experiment (948d8676-2c56-49db-8ea1-b80572b074c8)}{seaIce, ocean, atmos}{1mon, 1day}{sidmassgrowthwat, temp_submeso, fld_s03i535, average_T2, frz_onset, power_diss_drag, fld_s03i230, alvdr_ai, temp_xflux_ndiffuse, fld_s03i256, neutral_diffusion_temp, temp_yflux_adv, total_volume_...
by473{ACCESS-CM2}{Pacemaker variation of CMIP6 historical simulation, Topical Atlantic region replaced with fixed SSTs from observations}{seaIce, ocean, atmos}{1mon, 1day}{sidmassgrowthwat, temp_submeso, fld_s03i535, average_T2, frz_onset, power_diss_drag, fld_s03i230, alvdr_ai, temp_xflux_ndiffuse, fld_s03i256, neutral_diffusion_temp, temp_yflux_adv, total_volume_...
by578{ACCESS-CM2}{Pacemaker variation of CMIP6 ssp245 simulation with Tropical Atlantic region replaced with fixed SSTs from observations}{seaIce, ocean, atmos}{1mon, 1day}{sidmassgrowthwat, temp_submeso, fld_s03i535, average_T2, frz_onset, power_diss_drag, fld_s03i230, alvdr_ai, temp_xflux_ndiffuse, fld_s03i256, neutral_diffusion_temp, temp_yflux_adv, total_volume_...
by647{ACCESS-CM2}{Standard CMIP6 ssp245 simulation, control experiment for by578 pacemaker experiment (1fd9e682-d393-4b17-a9cd-934c3a48a1f8)}{seaIce, ocean, atmos}{1mon, 1day}{sidmassgrowthwat, temp_submeso, fld_s03i535, average_T2, frz_onset, power_diss_drag, fld_s03i230, alvdr_ai, temp_xflux_ndiffuse, fld_s03i256, neutral_diffusion_temp, temp_yflux_adv, total_volume_...
bz687{ACCESS-CM2}{ACCESS-CM2 CMIP6 with 1 degree ocean. Present day atmospheric forcing with 1985-2014 mean GHG, aerosol emissions etc.}{seaIce, ocean, atmos}{1mon, 1day}{sidmassgrowthwat, temp_submeso, fld_s03i535, average_T2, frz_onset, power_diss_drag, fld_s03i230, alvdr_ai, temp_xflux_ndiffuse, fld_s03i256, neutral_diffusion_temp, temp_yflux_adv, total_volume_...
cj877{ACCESS-CM2}{ACCESS-CM2 with COSIMA OM2 0.25 degree ocean configuration. Present day atmospheric forcing with 1985-2014 mean GHG, aerosol emissions etc.}{seaIce, ocean, atmos}{fx, 1mon, 1day}{sidmassgrowthwat, fld_s03i535, average_T2, eta_nonbouss, frz_onset, fld_s03i230, alvdr_ai, fld_s03i256, temp_yflux_adv, fld_s03i801, fld_s38i441, fld_s03i383, fld_s03i803, uarea, total_ocean_heat...
cmip5_al33{EC-EARTH, CMCC-CM, FIO-ESM, CSIRO-BOM-ACCESS1-0, IPSL-CM5A-LR, MIROC-MIROC5, MRI-ESM1, CESM1-BGC, CNRM-CM5-2, HadGEM2-A, bcc-csm1-1, GISS-E2-H-CC, fio-esm, GFDL-HIRAM-C360, GEOS-5, CNRM-CM5, MPI-...{Replicated CMIP5-era datasets catalogued by NCI}{ocnBgchem, ocean, atmos, land, aerosol, seaIce, landIce, none}{1mon, fx, 6hr, 1yr, 1day, subhr, 3hr}{va, sconcss, chlcalc, n2o, tnsclias, treeFracSecEver, phydiat, fVegSoil, evspsblsoi, tnsclicm, pastureFrac, epcalc100, cWood, emibc, nep, hfsifrazil2d, reffclwc, snc, fbddtdin, pfull, nppLeaf, ro...
cmip5_rr3{MIROC-MIROC5, CSIRO-BOM-ACCESS1-0, IPSL-CM5A-LR, CSIRO-Mk3-6-0, NCC-NorESM1-M, CNRM-CM5, MPI-M-MPI-ESM-LR, NorESM1-M, ECMWF-ERAINT, CSIRO-Mk3L-1-2, MIROC5, CCSM4, GFDL-ESM2M, MRI-CGCM3, GFDL-ESM2...{Australian CMIP5-era datasets catalogued by NCI}{ocean, atmos, land, aerosol, seaIce, landIce, none}{1mon, 3mon, fx, 6hr, 1day, 3hr, 1hr}{zg, va, hurs, wap, sconcss, transiy, tasmax-bc, sfcWindmaxmax, tauucorr, zg400, friver, residualFrac, dryso4, clw, wetdust, drypoa, concbc, tos, ts, od550aer, clh, evspsblsoi, sftof, sci, tauu, e...
cmip6_fs38{ACCESS-OM2-025, ACCESS-ESM1-5, ACCESS-CM2, ACCESS-OM2}{Australian CMIP6-era datasets catalogued by NCI}{ocnBgchem, ocean, atmos, land, aerosol, seaIce, landIce}{1mon, fx, 6hr, 1yr, 1day, 3hr}{sidmassgrowthwat, va, ocontemppadvect, prbigthetao, po4os, treeFracBdlEvg, evspsblsoi, sosga, cWood, cLand, nep, pfull, sidivvel, detoc, o2, tauv, sistrxdtop, opottempmint, mmroa, hursmax, hfbasi...
cmip6_oi10{GFDL-ESM4, MIROC-ES2H, GISS-E2-1-G-CC, EC-Earth3P-HR, HiRAM-SIT-LR, CESM2-WACCM, EC-Earth3-Veg-LR, IITM-ESM, NorESM1-F, CESM2, HadGEM3-GC31-LM, E3SM-1-0, FGOALS-f3-L, CMCC-CM2-VHR4, TaiESM1-TIMCO...{Replicated CMIP6-era datasets catalogued by NCI}{ocnBgchem, ocean, atmosChem, atmos, land, aerosol, seaIce, landIce}{1mon, fx, 6hr, 1yr, 1day, subhr, 3hr, 1hr}{sidmassgrowthwat, va, cOther, po4os, treeFracBdlEvg, evspsblsoi, fgsf6, pastureFrac, sosga, cWood, cLand, fCLandToOcean, nep, ua100m, snc, thetaot, thetaot2000, rootd, sidivvel, fFire, o2, fgcfc1...
\n", "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "catalog" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "You can also search based on the columns in this dataframe to find experiments that are relevant to you. For example, you might be interested in all ACCESS-OM2 experiments that have the variable `\"surface_salt\"` at daily frequency. There are 6 such experiments currently available through the catalog:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:25.950904Z", "iopub.status.busy": "2023-11-02T02:39:25.950751Z", "iopub.status.idle": "2023-11-02T02:39:25.976313Z", "shell.execute_reply": "2023-11-02T02:39:25.975619Z", "shell.execute_reply.started": "2023-11-02T02:39:25.950890Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "

Intake dataframe catalog with 6 source(s) across 6 rows:

\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
modeldescriptionrealmfrequencyvariable
name
01deg_jra55v13_ryf9091{ACCESS-OM2}{0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.3 RYF9091 repeat year forcing (May 1990 to Apr 1991)}{ocean}{1day}{surface_salt}
01deg_jra55v140_iaf{ACCESS-OM2}{Cycle 1 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{ocean}{1day}{surface_salt}
01deg_jra55v140_iaf_cycle2{ACCESS-OM2}{Cycle 2 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{ocean}{1day}{surface_salt}
01deg_jra55v140_iaf_cycle3{ACCESS-OM2}{Cycle 3 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{ocean}{1day}{surface_salt}
01deg_jra55v140_iaf_cycle4{ACCESS-OM2}{Cycle 4 of 0.1 degree ACCESS-OM2 global model configuration with JRA55-do v1.4.0 OMIP2 interannual forcing}{ocean}{1day}{surface_salt}
01deg_jra55v140_iaf_cycle4_jra55v150_extension{ACCESS-OM2}{Extensions of cycle 4 of 0.1 degree ACCESS-OM2 + WOMBAT BGC global model configuration with JRA55-do v1.5.0 and v1.5.0.1 interannual forcing}{ocean}{1day}{surface_salt}
\n", "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "catalog.search(model=\"ACCESS-OM2\", variable=\"surface_salt\", frequency=\"1day\")" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "In this way, the catalog provides similar functionality to the COSIMA cookbook Database Explorer tool." ] }, { "cell_type": "markdown", "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-10-17T05:28:12.243671Z", "iopub.status.busy": "2023-10-17T05:28:12.242971Z", "iopub.status.idle": "2023-10-17T05:28:12.248842Z", "shell.execute_reply": "2023-10-17T05:28:12.247916Z", "shell.execute_reply.started": "2023-10-17T05:28:12.243636Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# Opening data" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "There are [multiple ways](https://access-nri-intake-catalog.readthedocs.io/en/latest/usage/quickstart.html#loading-intake-sources) to open data from the experiments in `catalog`. Here we'll demonstrate how to do this when you know the name of the experiment you are interested in, since this typical for COSIMA users." ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "For example, we can open monthly data for the `surface_salt` variable in the `01deg_jra55v13_ryf9091` experiment as follows:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:25.978655Z", "iopub.status.busy": "2023-11-02T02:39:25.978494Z", "iopub.status.idle": "2023-11-02T02:39:25.981748Z", "shell.execute_reply": "2023-11-02T02:39:25.981095Z", "shell.execute_reply.started": "2023-11-02T02:39:25.978641Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "experiment = \"01deg_jra55v13_ryf9091\"\n", "variable = \"surface_salt\"" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:25.982401Z", "iopub.status.busy": "2023-11-02T02:39:25.982260Z", "iopub.status.idle": "2023-11-02T02:39:50.309277Z", "shell.execute_reply": "2023-11-02T02:39:50.307989Z", "shell.execute_reply.started": "2023-11-02T02:39:25.982388Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "data_ic = catalog[experiment].search(\n", " variable=variable, \n", " frequency=\"1mon\"\n", ").to_dask()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:50.312180Z", "iopub.status.busy": "2023-11-02T02:39:50.311332Z", "iopub.status.idle": "2023-11-02T02:39:50.387112Z", "shell.execute_reply": "2023-11-02T02:39:50.386116Z", "shell.execute_reply.started": "2023-11-02T02:39:50.312125Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'surface_salt' (time: 3360, yt_ocean: 2700, xt_ocean: 3600)>\n",
       "dask.array<concatenate, shape=(3360, 2700, 3600), dtype=float32, chunksize=(1, 675, 900), chunktype=numpy.ndarray>\n",
       "Coordinates:\n",
       "  * xt_ocean  (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n",
       "  * yt_ocean  (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n",
       "  * time      (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n",
       "Attributes:\n",
       "    long_name:      Practical Salinity\n",
       "    units:          psu\n",
       "    valid_range:    [-10. 100.]\n",
       "    cell_methods:   time: mean\n",
       "    time_avg_info:  average_T1,average_T2,average_DT\n",
       "    standard_name:  sea_surface_salinity
" ], "text/plain": [ "\n", "dask.array\n", "Coordinates:\n", " * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", " * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", " * time (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n", "Attributes:\n", " long_name: Practical Salinity\n", " units: psu\n", " valid_range: [-10. 100.]\n", " cell_methods: time: mean\n", " time_avg_info: average_T1,average_T2,average_DT\n", " standard_name: sea_surface_salinity" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_ic[\"surface_salt\"]" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "We can open the same data, using the COSIMA cookbook function `querying.getvar`:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:39:50.387814Z", "iopub.status.busy": "2023-11-02T02:39:50.387657Z", "iopub.status.idle": "2023-11-02T02:40:01.271355Z", "shell.execute_reply": "2023-11-02T02:40:01.270565Z", "shell.execute_reply.started": "2023-11-02T02:39:50.387800Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "session = cc.database.create_session()\n", "\n", "data_cc = cc.querying.getvar(\n", " expt=experiment,\n", " variable=variable,\n", " session=session,\n", " frequency=\"1 monthly\",\n", ")" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:40:01.272131Z", "iopub.status.busy": "2023-11-02T02:40:01.271947Z", "iopub.status.idle": "2023-11-02T02:40:01.312193Z", "shell.execute_reply": "2023-11-02T02:40:01.311339Z", "shell.execute_reply.started": "2023-11-02T02:40:01.272114Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'surface_salt' (time: 3360, yt_ocean: 2700, xt_ocean: 3600)>\n",
       "dask.array<concatenate, shape=(3360, 2700, 3600), dtype=float32, chunksize=(1, 675, 900), chunktype=numpy.ndarray>\n",
       "Coordinates:\n",
       "  * xt_ocean  (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n",
       "  * yt_ocean  (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n",
       "  * time      (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n",
       "Attributes: (12/13)\n",
       "    long_name:      Practical Salinity\n",
       "    units:          psu\n",
       "    valid_range:    [-10. 100.]\n",
       "    cell_methods:   time: mean\n",
       "    time_avg_info:  average_T1,average_T2,average_DT\n",
       "    standard_name:  sea_surface_salinity\n",
       "    ...             ...\n",
       "    contact:        Andy Hogg\n",
       "    email:          andy.hogg@anu.edu.au\n",
       "    created:        2020-06-11\n",
       "    description:    0.1 degree ACCESS-OM2 global model configuration with JRA...\n",
       "    notes:          Additional daily outputs saved from 1 Jan 1950 to 31 Dec ...\n",
       "    url:            https://github.com/COSIMA/01deg_jra55_ryf/tree/01deg_jra5...
" ], "text/plain": [ "\n", "dask.array\n", "Coordinates:\n", " * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", " * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", " * time (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n", "Attributes: (12/13)\n", " long_name: Practical Salinity\n", " units: psu\n", " valid_range: [-10. 100.]\n", " cell_methods: time: mean\n", " time_avg_info: average_T1,average_T2,average_DT\n", " standard_name: sea_surface_salinity\n", " ... ...\n", " contact: Andy Hogg\n", " email: andy.hogg@anu.edu.au\n", " created: 2020-06-11\n", " description: 0.1 degree ACCESS-OM2 global model configuration with JRA...\n", " notes: Additional daily outputs saved from 1 Jan 1950 to 31 Dec ...\n", " url: https://github.com/COSIMA/01deg_jra55_ryf/tree/01deg_jra5..." ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_cc" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# Some important differences\n", "\n", "There are a few differences in functionality between the ACCESS-NRI Intake catalog and the COSIMA cookbook that users should be aware of." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. The cookbook returns DataArrays, whereas the catalog returns Datasets\n", "\n", "This is because with the catalog you can load multiple variables into a single dataset with a single call (when these variables are in the same file). E.g.:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2023-11-02T02:40:01.312868Z", "iopub.status.busy": "2023-11-02T02:40:01.312717Z", "iopub.status.idle": "2023-11-02T02:40:11.829156Z", "shell.execute_reply": "2023-11-02T02:40:11.827691Z", "shell.execute_reply.started": "2023-11-02T02:40:01.312854Z" } }, "outputs": [], "source": [ "data_ic_multivar = catalog[experiment].search(\n", " variable=[\"surface_salt\", \"surface_temp\"], \n", " frequency=\"1mon\"\n", ").to_dask()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:40:11.832272Z", "iopub.status.busy": "2023-11-02T02:40:11.830992Z", "iopub.status.idle": "2023-11-02T02:40:11.882119Z", "shell.execute_reply": "2023-11-02T02:40:11.881207Z", "shell.execute_reply.started": "2023-11-02T02:40:11.832224Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.Dataset>\n",
       "Dimensions:       (time: 3360, yt_ocean: 2700, xt_ocean: 3600)\n",
       "Coordinates:\n",
       "  * xt_ocean      (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n",
       "  * yt_ocean      (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n",
       "  * time          (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n",
       "Data variables:\n",
       "    surface_salt  (time, yt_ocean, xt_ocean) float32 dask.array<chunksize=(1, 675, 900), meta=np.ndarray>\n",
       "    surface_temp  (time, yt_ocean, xt_ocean) float32 dask.array<chunksize=(1, 675, 900), meta=np.ndarray>\n",
       "Attributes:\n",
       "    filename:                        ocean_month.nc\n",
       "    title:                           ACCESS-OM2-01\n",
       "    grid_type:                       mosaic\n",
       "    grid_tile:                       1\n",
       "    intake_esm_attrs:realm:          ocean\n",
       "    intake_esm_attrs:frequency:      1mon\n",
       "    intake_esm_attrs:filename:       ocean_month.nc\n",
       "    intake_esm_attrs:file_id:        ocean_month\n",
       "    intake_esm_attrs:_data_format_:  netcdf\n",
       "    intake_esm_dataset_key:          ocean_month.1mon
" ], "text/plain": [ "\n", "Dimensions: (time: 3360, yt_ocean: 2700, xt_ocean: 3600)\n", "Coordinates:\n", " * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", " * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", " * time (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n", "Data variables:\n", " surface_salt (time, yt_ocean, xt_ocean) float32 dask.array\n", " surface_temp (time, yt_ocean, xt_ocean) float32 dask.array\n", "Attributes:\n", " filename: ocean_month.nc\n", " title: ACCESS-OM2-01\n", " grid_type: mosaic\n", " grid_tile: 1\n", " intake_esm_attrs:realm: ocean\n", " intake_esm_attrs:frequency: 1mon\n", " intake_esm_attrs:filename: ocean_month.nc\n", " intake_esm_attrs:file_id: ocean_month\n", " intake_esm_attrs:_data_format_: netcdf\n", " intake_esm_dataset_key: ocean_month.1mon" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_ic_multivar" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 2. The catalog knows which files make up distinct datasets" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "The following fails with the cookbook because it doesn't know which frequency of data to load:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:40:11.882777Z", "iopub.status.busy": "2023-11-02T02:40:11.882624Z", "iopub.status.idle": "2023-11-02T02:40:15.094847Z", "shell.execute_reply": "2023-11-02T02:40:15.093195Z", "shell.execute_reply.started": "2023-11-02T02:40:11.882763Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [ "skip-execution" ] }, "outputs": [ { "ename": "QueryWarning", "evalue": "Your query returns files with differing frequencies: {'1 monthly', '1 daily'}. This could lead to unexpected behaviour! Disambiguate by passing frequency= to getvar, specifying the desired frequency.", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mQueryWarning\u001b[0m Traceback (most recent call last)", "Cell \u001b[0;32mIn[14], line 1\u001b[0m\n\u001b[0;32m----> 1\u001b[0m data_ic_multifreq \u001b[38;5;241m=\u001b[39m \u001b[43mcc\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mquerying\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mgetvar\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 2\u001b[0m \u001b[43m \u001b[49m\u001b[43mexpt\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mexperiment\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 3\u001b[0m \u001b[43m \u001b[49m\u001b[43mvariable\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mvariable\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 4\u001b[0m \u001b[43m \u001b[49m\u001b[43msession\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43msession\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 5\u001b[0m \u001b[43m)\u001b[49m\n", "File \u001b[0;32m/g/data/hh5/public/apps/miniconda3/envs/analysis3-23.07/lib/python3.10/site-packages/cosima_cookbook/querying.py:334\u001b[0m, in \u001b[0;36mgetvar\u001b[0;34m(expt, variable, session, ncfile, start_time, end_time, n, frequency, attrs, attrs_unique, return_dataset, **kwargs)\u001b[0m\n\u001b[1;32m 331\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m attrs_unique \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 332\u001b[0m attrs_unique \u001b[38;5;241m=\u001b[39m {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcell_methods\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mtime: mean\u001b[39m\u001b[38;5;124m\"\u001b[39m}\n\u001b[0;32m--> 334\u001b[0m ncfiles \u001b[38;5;241m=\u001b[39m \u001b[43m_ncfiles_for_variable\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 335\u001b[0m \u001b[43m \u001b[49m\u001b[43mexpt\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 336\u001b[0m \u001b[43m \u001b[49m\u001b[43mvariable\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 337\u001b[0m \u001b[43m \u001b[49m\u001b[43msession\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 338\u001b[0m \u001b[43m \u001b[49m\u001b[43mncfile\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 339\u001b[0m \u001b[43m \u001b[49m\u001b[43mstart_time\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 340\u001b[0m \u001b[43m \u001b[49m\u001b[43mend_time\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 341\u001b[0m \u001b[43m \u001b[49m\u001b[43mn\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 342\u001b[0m \u001b[43m \u001b[49m\u001b[43mfrequency\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 343\u001b[0m \u001b[43m \u001b[49m\u001b[43mattrs\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 344\u001b[0m \u001b[43m \u001b[49m\u001b[43mattrs_unique\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 345\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 347\u001b[0m variables \u001b[38;5;241m=\u001b[39m [variable]\n\u001b[1;32m 348\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m return_dataset:\n\u001b[1;32m 349\u001b[0m \u001b[38;5;66;03m# we know at least one variable was returned, so we can index ncfiles\u001b[39;00m\n\u001b[1;32m 350\u001b[0m \u001b[38;5;66;03m# ask for the extra variables associated with cell_methods, etc.\u001b[39;00m\n", "File \u001b[0;32m/g/data/hh5/public/apps/miniconda3/envs/analysis3-23.07/lib/python3.10/site-packages/cosima_cookbook/querying.py:529\u001b[0m, in \u001b[0;36m_ncfiles_for_variable\u001b[0;34m(expt, variable, session, ncfile, start_time, end_time, n, frequency, attrs, attrs_unique)\u001b[0m\n\u001b[1;32m 527\u001b[0m unique_freqs \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mset\u001b[39m(f\u001b[38;5;241m.\u001b[39mNCFile\u001b[38;5;241m.\u001b[39mfrequency \u001b[38;5;28;01mfor\u001b[39;00m f \u001b[38;5;129;01min\u001b[39;00m ncfiles)\n\u001b[1;32m 528\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(unique_freqs) \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m1\u001b[39m:\n\u001b[0;32m--> 529\u001b[0m \u001b[43mwarnings\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mwarn\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 530\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;124;43mf\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mYour query returns files with differing frequencies: \u001b[39;49m\u001b[38;5;132;43;01m{\u001b[39;49;00m\u001b[43munique_freqs\u001b[49m\u001b[38;5;132;43;01m}\u001b[39;49;00m\u001b[38;5;124;43m. \u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\n\u001b[1;32m 531\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mThis could lead to unexpected behaviour! Disambiguate by passing \u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\n\u001b[1;32m 532\u001b[0m \u001b[43m \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mfrequency= to getvar, specifying the desired frequency.\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m 533\u001b[0m \u001b[43m \u001b[49m\u001b[43mQueryWarning\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 534\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 536\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m ncfiles\n", "\u001b[0;31mQueryWarning\u001b[0m: Your query returns files with differing frequencies: {'1 monthly', '1 daily'}. This could lead to unexpected behaviour! Disambiguate by passing frequency= to getvar, specifying the desired frequency." ] } ], "source": [ "data_ic_multifreq = cc.querying.getvar(\n", " expt=experiment,\n", " variable=variable,\n", " session=session,\n", ")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "Additionally, there are cases where the cookbook will [silently load and concatenate data on different grids](https://github.com/COSIMA/cosima-recipes/issues/229), because it does not know which files in the database should/shouldn't be concatenated together.\n", "\n", "The catalog know which files make up distinct datasets and provides methods to open multiple datasets from a single query. We can run the equivalent to the cell above using the catalog, using `to_dataset_dict()` rather than `to_dask()`. Doing so returns a dictionary containing Datasets of the variable at all the available frequencies (daily and monthly in this case)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:41:32.236116Z", "iopub.status.busy": "2023-11-02T02:41:32.233955Z", "iopub.status.idle": "2023-11-02T02:41:49.532441Z", "shell.execute_reply": "2023-11-02T02:41:49.530987Z", "shell.execute_reply.started": "2023-11-02T02:41:32.236045Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "--> The keys in the returned dictionary of datasets are constructed as follows:\n", "\t'file_id.frequency'\n" ] }, { "data": { "text/html": [ "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "
\n", " \n", " 100.00% [2/2 00:15<00:00]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data_ic_multifreq = catalog[experiment].search(variable=variable).to_dataset_dict()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:41:49.536416Z", "iopub.status.busy": "2023-11-02T02:41:49.535719Z", "iopub.status.idle": "2023-11-02T02:41:49.550481Z", "shell.execute_reply": "2023-11-02T02:41:49.549299Z", "shell.execute_reply.started": "2023-11-02T02:41:49.536379Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/plain": [ "{'ocean_daily.1day': \n", " Dimensions: (time: 81580, yt_ocean: 2700, xt_ocean: 3600)\n", " Coordinates:\n", " * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", " * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", " * time (time) object 1956-04-01 12:00:00 ... 2179-12-31 12:00:00\n", " Data variables:\n", " surface_salt (time, yt_ocean, xt_ocean) float32 dask.array\n", " Attributes:\n", " filename: ocean_daily.nc\n", " title: ACCESS-OM2-01\n", " grid_type: mosaic\n", " grid_tile: 1\n", " intake_esm_vars: ['surface_salt']\n", " intake_esm_attrs:realm: ocean\n", " intake_esm_attrs:frequency: 1day\n", " intake_esm_attrs:filename: ocean_daily.nc\n", " intake_esm_attrs:file_id: ocean_daily\n", " intake_esm_attrs:_data_format_: netcdf\n", " intake_esm_dataset_key: ocean_daily.1day,\n", " 'ocean_month.1mon': \n", " Dimensions: (time: 3360, yt_ocean: 2700, xt_ocean: 3600)\n", " Coordinates:\n", " * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", " * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", " * time (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n", " Data variables:\n", " surface_salt (time, yt_ocean, xt_ocean) float32 dask.array\n", " Attributes:\n", " filename: ocean_month.nc\n", " title: ACCESS-OM2-01\n", " grid_type: mosaic\n", " grid_tile: 1\n", " intake_esm_vars: ['surface_salt']\n", " intake_esm_attrs:realm: ocean\n", " intake_esm_attrs:frequency: 1mon\n", " intake_esm_attrs:filename: ocean_month.nc\n", " intake_esm_attrs:file_id: ocean_month\n", " intake_esm_attrs:_data_format_: netcdf\n", " intake_esm_dataset_key: ocean_month.1mon}" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_ic_multifreq" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "Alternatively, multiple datasets can be opened directly into an [xarray-datatree](https://xarray-datatree.readthedocs.io/en/latest/) by calling `to_datatree` rather than `to_dataset_dict` (in an upcoming release, it will be easier for users to control how the groups are structured in the datatree.). E.g.:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:41:49.552454Z", "iopub.status.busy": "2023-11-02T02:41:49.552028Z", "iopub.status.idle": "2023-11-02T02:42:06.828549Z", "shell.execute_reply": "2023-11-02T02:42:06.827496Z", "shell.execute_reply.started": "2023-11-02T02:41:49.552414Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "--> The keys in the returned dictionary of datasets are constructed as follows:\n", "\t'file_id/frequency'\n" ] }, { "data": { "text/html": [ "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "
\n", " \n", " 100.00% [2/2 00:15<00:00]\n", "
\n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "data_ic_datatree = catalog[experiment].search(variable=variable).to_datatree()" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:06.830580Z", "iopub.status.busy": "2023-11-02T02:42:06.829973Z", "iopub.status.idle": "2023-11-02T02:42:06.877594Z", "shell.execute_reply": "2023-11-02T02:42:06.876777Z", "shell.execute_reply.started": "2023-11-02T02:42:06.830542Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DatasetView>\n",
       "Dimensions:  ()\n",
       "Data variables:\n",
       "    *empty*
" ], "text/plain": [ "DataTree('None', parent=None)\n", "├── DataTree('ocean_daily')\n", "│ └── DataTree('1day')\n", "│ Dimensions: (time: 81580, yt_ocean: 2700, xt_ocean: 3600)\n", "│ Coordinates:\n", "│ * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", "│ * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", "│ * time (time) object 1956-04-01 12:00:00 ... 2179-12-31 12:00:00\n", "│ Data variables:\n", "│ surface_salt (time, yt_ocean, xt_ocean) float32 dask.array\n", "│ Attributes:\n", "│ filename: ocean_daily.nc\n", "│ title: ACCESS-OM2-01\n", "│ grid_type: mosaic\n", "│ grid_tile: 1\n", "│ intake_esm_vars: ['surface_salt']\n", "│ intake_esm_attrs:realm: ocean\n", "│ intake_esm_attrs:frequency: 1day\n", "│ intake_esm_attrs:filename: ocean_daily.nc\n", "│ intake_esm_attrs:file_id: ocean_daily\n", "│ intake_esm_attrs:_data_format_: netcdf\n", "│ intake_esm_dataset_key: ocean_daily/1day\n", "└── DataTree('ocean_month')\n", " └── DataTree('1mon')\n", " Dimensions: (time: 3360, yt_ocean: 2700, xt_ocean: 3600)\n", " Coordinates:\n", " * xt_ocean (xt_ocean) float64 -279.9 -279.8 -279.7 ... 79.75 79.85 79.95\n", " * yt_ocean (yt_ocean) float64 -81.11 -81.07 -81.02 ... 89.89 89.94 89.98\n", " * time (time) object 1900-01-16 12:00:00 ... 2179-12-16 12:00:00\n", " Data variables:\n", " surface_salt (time, yt_ocean, xt_ocean) float32 dask.array\n", " Attributes:\n", " filename: ocean_month.nc\n", " title: ACCESS-OM2-01\n", " grid_type: mosaic\n", " grid_tile: 1\n", " intake_esm_vars: ['surface_salt']\n", " intake_esm_attrs:realm: ocean\n", " intake_esm_attrs:frequency: 1mon\n", " intake_esm_attrs:filename: ocean_month.nc\n", " intake_esm_attrs:file_id: ocean_month\n", " intake_esm_attrs:_data_format_: netcdf\n", " intake_esm_dataset_key: ocean_month/1mon" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_ic_datatree" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 3. The frequency vocabulary is different" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "With the cookbook `querying.getvar` function, the provided frequency must be one of (where `` is an integer):\n", "\n", "```python\n", "\"static\"\n", "\" hourly\"\n", "\" daily\"\n", "\" monthly\"\n", "\" yearly\"\n", "``` \n", "\n", "In the catalog, frequency follows a standard vocabulary that is very similar to CMIP6:\n", "\n", "```python\n", "\"fx\" # fixed\n", "\"subhr\" # subhourly\n", "\"hr\" # hourly\n", "\"day\" # daily\n", "\"mon\" # monthly\n", "\"yr\" # yearly\n", "\"dec\" # decadal\n", "```" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 4. Passing keyword arguments is different" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "With the cookbook `querying.getvar` function, additional keyword arguments to be passed to xarray's `open_mfdataset` can be passed directly to the `getvar` function. For example, one might specify the chunks and combining arguments using:" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:06.880380Z", "iopub.status.busy": "2023-11-02T02:42:06.880212Z", "iopub.status.idle": "2023-11-02T02:42:16.685782Z", "shell.execute_reply": "2023-11-02T02:42:16.684635Z", "shell.execute_reply.started": "2023-11-02T02:42:06.880365Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "data_cc_kw = cc.querying.getvar(\n", " expt=experiment,\n", " variable=variable,\n", " session=session,\n", " frequency=\"1 monthly\",\n", " chunks={\"xt_ocean\": -1, \"yt_ocean\": -1},\n", " compat=\"override\",\n", " data_vars=\"minimal\",\n", " coords=\"minimal\"\n", ")" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "With the catalog, keyword argments for xarray's `open_dataset` and `combine_by_coords` functions are passed separately to `to_dask` (or `to_dataset_dict`). For example, to do the same as the previous cell:" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:16.686662Z", "iopub.status.busy": "2023-11-02T02:42:16.686486Z", "iopub.status.idle": "2023-11-02T02:42:26.238843Z", "shell.execute_reply": "2023-11-02T02:42:26.238015Z", "shell.execute_reply.started": "2023-11-02T02:42:16.686646Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "xarray_open_kwargs=dict(\n", " chunks={\"xt_ocean\": -1, \"yt_ocean\": -1}\n", ")\n", "xarray_combine_by_coords_kwargs=dict(\n", " compat=\"override\",\n", " data_vars=\"minimal\",\n", " coords=\"minimal\"\n", ")\n", "\n", "data_ic_kw = catalog[experiment].search(\n", " variable=variable, \n", " frequency=\"1mon\"\n", ").to_dask(\n", " xarray_open_kwargs=xarray_open_kwargs,\n", " xarray_combine_by_coords_kwargs=xarray_combine_by_coords_kwargs,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 5. You cannot search by start and end date using the catalog\n", "\n", "With the cookbook, it's common to specify a time *range* in the `getvar` query. E.g.:" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:26.239704Z", "iopub.status.busy": "2023-11-02T02:42:26.239531Z", "iopub.status.idle": "2023-11-02T02:42:32.545110Z", "shell.execute_reply": "2023-11-02T02:42:32.544260Z", "shell.execute_reply.started": "2023-11-02T02:42:26.239689Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "start_time = \"2000-01-01\"\n", "end_time = \"2180-01-01\"\n", "\n", "data_cc_times = cc.querying.getvar(\n", " expt=experiment,\n", " variable=variable,\n", " session=session,\n", " frequency=\"1 monthly\",\n", " start_time=start_time,\n", " end_time=end_time,\n", ")\n", "\n", "data_cc_times = data_cc_times.sel(time=slice(start_time, end_time))" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "It's not possible to query on a time range with the Intake catalog. \n", "\n", "That is, with the catalog you'd just do (which takes a few seconds longer):" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:32.545935Z", "iopub.status.busy": "2023-11-02T02:42:32.545757Z", "iopub.status.idle": "2023-11-02T02:42:42.503650Z", "shell.execute_reply": "2023-11-02T02:42:42.500071Z", "shell.execute_reply.started": "2023-11-02T02:42:32.545920Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "data_ic = catalog[experiment].search(\n", " variable=variable, \n", " frequency=\"1mon\"\n", ").to_dask()\n", "\n", "data_ic_times = data_ic.sel(time=slice(start_time, end_time))" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "This difference is acceptable because the opening of datasets is a parallelized task that is done [lazily](https://docs.xarray.dev/en/stable/user-guide/dask.html#parallel-computing-with-dask), so opening all files and reducing the times using xarray's `sel` methods doesn't add too much overhead. In most cases where the overhead of opening the files seems large, this can be reduced through sensible choices of keyword arguments provided to `open_dataset` and `combine_by_coords` - see the xarray documentation on [Reading multi-file datasets](https://docs.xarray.dev/en/stable/user-guide/io.html#reading-multi-file-datasets) for details." ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "# Tips, gotchas and workarounds" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 1. Speeding up opening your datasets" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "Try passing the following argument to your `to_dask` or `to_dataset_dict` call:\n", "\n", "```python\n", "xarray_combine_by_coords_kwargs=dict(\n", " compat=\"override\",\n", " data_vars=\"minimal\",\n", " coords=\"minimal\"\n", ")\n", "```\n", "\n", "See the xarray documentation on [Reading multi-file datasets](https://docs.xarray.dev/en/stable/user-guide/io.html#reading-multi-file-datasets) for more details about these arguments." ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 2. Choosing chunksizes\n", "\n", "Correctly choosing chunk sizes when you open datasets will greatly improve the speed of your analysis. Check out the [Chunking tutorial](https://access-nri-intake-catalog.readthedocs.io/en/latest/usage/chunking.html) in the ACCESS-NRI Intake catalog documentation" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 3. Loading time-invarient variables" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "Many COSIMA experiments include multiple repeated files containing the same fixed frequency data (e.g. grid information). Both the cookbook and the catalog will fail to concatenate these files since they contain no clear dimension to concatenate along. The workaround with the cookbook is to specify the argument `n=1` to tell the cookbook to return only data from the first file, e.g." ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:42.507263Z", "iopub.status.busy": "2023-11-02T02:42:42.506539Z", "iopub.status.idle": "2023-11-02T02:42:42.925757Z", "shell.execute_reply": "2023-11-02T02:42:42.924889Z", "shell.execute_reply.started": "2023-11-02T02:42:42.507217Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "data_cc_fixed = cc.querying.getvar(\n", " expt=experiment,\n", " variable=\"area_t\",\n", " session=session,\n", " n=1,\n", ")" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "There is no equivalent `n` argument with the catalog, but you can further restrict your search to only return one file. For example, you could only return the file in the `output000` directory with:" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:42.926880Z", "iopub.status.busy": "2023-11-02T02:42:42.926665Z", "iopub.status.idle": "2023-11-02T02:42:43.175105Z", "shell.execute_reply": "2023-11-02T02:42:43.174087Z", "shell.execute_reply.started": "2023-11-02T02:42:42.926861Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "data_ic_fixed = catalog[experiment].search(\n", " variable='area_t',\n", " path=\".*output000.*\"\n", ").to_dask()" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "## 4. Determining what can be searched upon in an experiment\n", "\n", "You can see what can be `search`ed on within an experiment with:" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:43.177862Z", "iopub.status.busy": "2023-11-02T02:42:43.176538Z", "iopub.status.idle": "2023-11-02T02:42:43.185184Z", "shell.execute_reply": "2023-11-02T02:42:43.184202Z", "shell.execute_reply.started": "2023-11-02T02:42:43.177815Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/plain": [ "['path',\n", " 'realm',\n", " 'variable',\n", " 'frequency',\n", " 'start_date',\n", " 'end_date',\n", " 'variable_long_name',\n", " 'variable_standard_name',\n", " 'variable_cell_methods',\n", " 'variable_units',\n", " 'filename',\n", " 'file_id']" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "catalog[experiment].df.columns.tolist()" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "It can also be helpful sometimes to look at the `catalog[experiment].df` object itself, which is a dataframe of all of the files in the experiment and their metadata" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:43.187154Z", "iopub.status.busy": "2023-11-02T02:42:43.186731Z", "iopub.status.idle": "2023-11-02T02:42:43.241174Z", "shell.execute_reply": "2023-11-02T02:42:43.239956Z", "shell.execute_reply.started": "2023-11-02T02:42:43.187114Z" }, "scrolled": true, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
pathrealmvariablefrequencystart_dateend_datevariable_long_namevariable_standard_namevariable_cell_methodsvariable_unitsfilenamefile_id
0/g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ice/OUTPUT/iceh.1900-01.ncseaIce[time_bounds, TLON, TLAT, ULON, ULAT, NCAT, tmask, blkmask, tarea, uarea, dxt, dyt, dxu, dyu, HTN, HTE, ANGLE, ANGLET, hi_m, hs_m, Tsfc_m, aice_m, uvel_m, vvel_m, uatm_m, vatm_m, fswup_m, sst_m, s...1mon1900-01-01, 00:00:001900-02-01, 00:00:00[boundaries for time-averaging interval, T grid center longitude, T grid center latitude, U grid center longitude, U grid center latitude, category maximum thickness, ocean grid mask, ice grid blo...[, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ][, , , , , , , , , , , , , , , , , , time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim...[days since 1900-01-01 00:00:00, degrees_east, degrees_north, degrees_east, degrees_north, m, , , m^2, m^2, m, m, m, m, m, m, radians, radians, m, m, C, 1, m/s, m/s, m/s, m/s, W/m^2, C, ppt, m/s, ...iceh.1900-01.nciceh_XXXX_XX
1/g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ice/OUTPUT/iceh.1900-02.ncseaIce[time_bounds, TLON, TLAT, ULON, ULAT, NCAT, tmask, blkmask, tarea, uarea, dxt, dyt, dxu, dyu, HTN, HTE, ANGLE, ANGLET, hi_m, hs_m, Tsfc_m, aice_m, uvel_m, vvel_m, uatm_m, vatm_m, fswup_m, sst_m, s...1mon1900-02-01, 00:00:001900-03-01, 00:00:00[boundaries for time-averaging interval, T grid center longitude, T grid center latitude, U grid center longitude, U grid center latitude, category maximum thickness, ocean grid mask, ice grid blo...[, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ][, , , , , , , , , , , , , , , , , , time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim...[days since 1900-01-01 00:00:00, degrees_east, degrees_north, degrees_east, degrees_north, m, , , m^2, m^2, m, m, m, m, m, m, radians, radians, m, m, C, 1, m/s, m/s, m/s, m/s, W/m^2, C, ppt, m/s, ...iceh.1900-02.nciceh_XXXX_XX
2/g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ice/OUTPUT/iceh.1900-03.ncseaIce[time_bounds, TLON, TLAT, ULON, ULAT, NCAT, tmask, blkmask, tarea, uarea, dxt, dyt, dxu, dyu, HTN, HTE, ANGLE, ANGLET, hi_m, hs_m, Tsfc_m, aice_m, uvel_m, vvel_m, uatm_m, vatm_m, fswup_m, sst_m, s...1mon1900-03-01, 00:00:001900-04-01, 00:00:00[boundaries for time-averaging interval, T grid center longitude, T grid center latitude, U grid center longitude, U grid center latitude, category maximum thickness, ocean grid mask, ice grid blo...[, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ][, , , , , , , , , , , , , , , , , , time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim...[days since 1900-01-01 00:00:00, degrees_east, degrees_north, degrees_east, degrees_north, m, , , m^2, m^2, m, m, m, m, m, m, radians, radians, m, m, C, 1, m/s, m/s, m/s, m/s, W/m^2, C, ppt, m/s, ...iceh.1900-03.nciceh_XXXX_XX
3/g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ocean/ocean.ncocean[temp, pot_temp, salt, age_global, u, v, wt, dzt, rho, pot_rho_0, tx_trans, ty_trans, ty_trans_submeso, tx_trans_rho, ty_trans_rho, ty_trans_nrho_submeso, temp_xflux_adv, temp_yflux_adv, average_T...3mon1900-01-01, 00:00:001900-04-01, 00:00:00[Conservative temperature, Potential temperature, Practical Salinity, Age (global), i-current, j-current, dia-surface velocity T-points, t-cell thickness, in situ density, potential density refere...[, sea_water_potential_temperature, sea_water_salinity, sea_water_age_since_surface_contact, sea_water_x_velocity, sea_water_y_velocity, , cell_thickness, , sea_water_potential_density, ocean_mass...[time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim...[deg_C, degrees K, psu, yr, m/sec, m/sec, m/sec, m, kg/m^3, kg/m^3, kg/s, kg/s, kg/s, kg/s, kg/s, kg/s, Watts, Watts, days since 1900-01-01 00:00:00, days since 1900-01-01 00:00:00, days, days]ocean.ncocean
4/g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ocean/ocean_grid.ncocean[geolon_t, geolat_t, geolon_c, geolat_c, ht, hu, dxt, dyt, dxu, dyu, area_t, area_u, kmt, kmu, drag_coeff]fxnonenone[tracer longitude, tracer latitude, uv longitude, uv latitude, ocean depth on t-cells, ocean depth on u-cells, ocean dxt on t-cells, ocean dyt on t-cells, ocean dxu on u-cells, ocean dyu on u-cell...[, , , , sea_floor_depth_below_geoid, , , , , , , , , , ][time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point][degrees_E, degrees_N, degrees_E, degrees_N, m, m, m, m, m, m, m^2, m^2, dimensionless, dimensionless, dimensionless]ocean_grid.ncocean_grid
\n", "
" ], "text/plain": [ " path \\\n", "0 /g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ice/OUTPUT/iceh.1900-01.nc \n", "1 /g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ice/OUTPUT/iceh.1900-02.nc \n", "2 /g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ice/OUTPUT/iceh.1900-03.nc \n", "3 /g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ocean/ocean.nc \n", "4 /g/data/ik11/outputs/access-om2-01/01deg_jra55v13_ryf9091/output000/ocean/ocean_grid.nc \n", "\n", " realm \\\n", "0 seaIce \n", "1 seaIce \n", "2 seaIce \n", "3 ocean \n", "4 ocean \n", "\n", " variable \\\n", "0 [time_bounds, TLON, TLAT, ULON, ULAT, NCAT, tmask, blkmask, tarea, uarea, dxt, dyt, dxu, dyu, HTN, HTE, ANGLE, ANGLET, hi_m, hs_m, Tsfc_m, aice_m, uvel_m, vvel_m, uatm_m, vatm_m, fswup_m, sst_m, s... \n", "1 [time_bounds, TLON, TLAT, ULON, ULAT, NCAT, tmask, blkmask, tarea, uarea, dxt, dyt, dxu, dyu, HTN, HTE, ANGLE, ANGLET, hi_m, hs_m, Tsfc_m, aice_m, uvel_m, vvel_m, uatm_m, vatm_m, fswup_m, sst_m, s... \n", "2 [time_bounds, TLON, TLAT, ULON, ULAT, NCAT, tmask, blkmask, tarea, uarea, dxt, dyt, dxu, dyu, HTN, HTE, ANGLE, ANGLET, hi_m, hs_m, Tsfc_m, aice_m, uvel_m, vvel_m, uatm_m, vatm_m, fswup_m, sst_m, s... \n", "3 [temp, pot_temp, salt, age_global, u, v, wt, dzt, rho, pot_rho_0, tx_trans, ty_trans, ty_trans_submeso, tx_trans_rho, ty_trans_rho, ty_trans_nrho_submeso, temp_xflux_adv, temp_yflux_adv, average_T... \n", "4 [geolon_t, geolat_t, geolon_c, geolat_c, ht, hu, dxt, dyt, dxu, dyu, area_t, area_u, kmt, kmu, drag_coeff] \n", "\n", " frequency start_date end_date \\\n", "0 1mon 1900-01-01, 00:00:00 1900-02-01, 00:00:00 \n", "1 1mon 1900-02-01, 00:00:00 1900-03-01, 00:00:00 \n", "2 1mon 1900-03-01, 00:00:00 1900-04-01, 00:00:00 \n", "3 3mon 1900-01-01, 00:00:00 1900-04-01, 00:00:00 \n", "4 fx none none \n", "\n", " variable_long_name \\\n", "0 [boundaries for time-averaging interval, T grid center longitude, T grid center latitude, U grid center longitude, U grid center latitude, category maximum thickness, ocean grid mask, ice grid blo... \n", "1 [boundaries for time-averaging interval, T grid center longitude, T grid center latitude, U grid center longitude, U grid center latitude, category maximum thickness, ocean grid mask, ice grid blo... \n", "2 [boundaries for time-averaging interval, T grid center longitude, T grid center latitude, U grid center longitude, U grid center latitude, category maximum thickness, ocean grid mask, ice grid blo... \n", "3 [Conservative temperature, Potential temperature, Practical Salinity, Age (global), i-current, j-current, dia-surface velocity T-points, t-cell thickness, in situ density, potential density refere... \n", "4 [tracer longitude, tracer latitude, uv longitude, uv latitude, ocean depth on t-cells, ocean depth on u-cells, ocean dxt on t-cells, ocean dyt on t-cells, ocean dxu on u-cells, ocean dyu on u-cell... \n", "\n", " variable_standard_name \\\n", "0 [, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ] \n", "1 [, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ] \n", "2 [, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ] \n", "3 [, sea_water_potential_temperature, sea_water_salinity, sea_water_age_since_surface_contact, sea_water_x_velocity, sea_water_y_velocity, , cell_thickness, , sea_water_potential_density, ocean_mass... \n", "4 [, , , , sea_floor_depth_below_geoid, , , , , , , , , , ] \n", "\n", " variable_cell_methods \\\n", "0 [, , , , , , , , , , , , , , , , , , time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim... \n", "1 [, , , , , , , , , , , , , , , , , , time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim... \n", "2 [, , , , , , , , , , , , , , , , , , time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim... \n", "3 [time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, time: mean, tim... \n", "4 [time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point, time: point] \n", "\n", " variable_units \\\n", "0 [days since 1900-01-01 00:00:00, degrees_east, degrees_north, degrees_east, degrees_north, m, , , m^2, m^2, m, m, m, m, m, m, radians, radians, m, m, C, 1, m/s, m/s, m/s, m/s, W/m^2, C, ppt, m/s, ... \n", "1 [days since 1900-01-01 00:00:00, degrees_east, degrees_north, degrees_east, degrees_north, m, , , m^2, m^2, m, m, m, m, m, m, radians, radians, m, m, C, 1, m/s, m/s, m/s, m/s, W/m^2, C, ppt, m/s, ... \n", "2 [days since 1900-01-01 00:00:00, degrees_east, degrees_north, degrees_east, degrees_north, m, , , m^2, m^2, m, m, m, m, m, m, radians, radians, m, m, C, 1, m/s, m/s, m/s, m/s, W/m^2, C, ppt, m/s, ... \n", "3 [deg_C, degrees K, psu, yr, m/sec, m/sec, m/sec, m, kg/m^3, kg/m^3, kg/s, kg/s, kg/s, kg/s, kg/s, kg/s, Watts, Watts, days since 1900-01-01 00:00:00, days since 1900-01-01 00:00:00, days, days] \n", "4 [degrees_E, degrees_N, degrees_E, degrees_N, m, m, m, m, m, m, m^2, m^2, dimensionless, dimensionless, dimensionless] \n", "\n", " filename file_id \n", "0 iceh.1900-01.nc iceh_XXXX_XX \n", "1 iceh.1900-02.nc iceh_XXXX_XX \n", "2 iceh.1900-03.nc iceh_XXXX_XX \n", "3 ocean.nc ocean \n", "4 ocean_grid.nc ocean_grid " ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "catalog[experiment].df.head()" ] }, { "cell_type": "markdown", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "If you have any further questions after reading this notebook and the documentation linked from this notebook, please open an issue in the [ACCESS-NRI Intake catalog Github repo](https://github.com/ACCESS-NRI/access-nri-intake-catalog) or open topic on the [ACCESS-Hive forum](https://forum.access-hive.org.au/)." ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "editable": true, "execution": { "iopub.execute_input": "2023-11-02T02:42:43.243875Z", "iopub.status.busy": "2023-11-02T02:42:43.242909Z", "iopub.status.idle": "2023-11-02T02:42:44.914996Z", "shell.execute_reply": "2023-11-02T02:42:44.914107Z", "shell.execute_reply.started": "2023-11-02T02:42:43.243849Z" }, "slideshow": { "slide_type": "" }, "tags": [] }, "outputs": [], "source": [ "client.close()" ] } ], "metadata": { "kernelspec": { "display_name": "Python [conda env:analysis3-23.07]", "language": "python", "name": "conda-env-analysis3-23.07-py" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.13" } }, "nbformat": 4, "nbformat_minor": 4 }