esgf_query {epwshiftr}R Documentation

Query CMIP6 data using ESGF search RESTful API

Description

Query CMIP6 data using ESGF search RESTful API

Usage

esgf_query(
  activity = "ScenarioMIP",
  variable = c("tas", "tasmax", "tasmin", "hurs", "hursmax", "hursmin", "pr", "rsds",
    "rlds", "psl", "sfcWind", "clt"),
  frequency = "day",
  experiment = c("ssp126", "ssp245", "ssp370", "ssp585"),
  source = c("AWI-CM-1-1-MR", "BCC-CSM2-MR", "CESM2", "CESM2-WACCM", "EC-Earth3",
    "EC-Earth3-Veg", "GFDL-ESM4", "INM-CM4-8", "INM-CM5-0", "MPI-ESM1-2-HR",
    "MRI-ESM2-0"),
  variant = "r1i1p1f1",
  replica = FALSE,
  latest = TRUE,
  resolution = c("100 km", "50 km"),
  type = "Dataset",
  limit = 10000L,
  data_node = NULL
)

Arguments

activity

A character vector indicating activity identifiers. Default: "ScenarioMIP". Possible values:

  • "AerChemMIP": Aerosols and Chemistry Model Intercomparison Project,

  • "C4MIP": Coupled Climate Carbon Cycle Model Intercomparison Project,

  • "CDRMIP": Carbon Dioxide Removal Model Intercomparison Project,

  • "CFMIP": Cloud Feedback Model Intercomparison Project,

  • "CMIP": CMIP DECK: 1pctCO2, abrupt4xCO2, amip, esm-piControl, esm-historical, historical, and piControl experiments,

  • "CORDEX": Coordinated Regional Climate Downscaling Experiment,

  • "DAMIP": Detection and Attribution Model Intercomparison Project,

  • "DCPP": Decadal Climate Prediction Project,

  • "DynVarMIP": Dynamics and Variability Model Intercomparison Project,

  • "FAFMIP": Flux-Anomaly-Forced Model Intercomparison Project,

  • "GMMIP": Global Monsoons Model Intercomparison Project,

  • "GeoMIP": Geoengineering Model Intercomparison Project,

  • "HighResMIP": High-Resolution Model Intercomparison Project,

  • "ISMIP6": Ice Sheet Model Intercomparison Project for CMIP6,

  • "LS3MIP": Land Surface, Snow and Soil Moisture,

  • "LUMIP": Land-Use Model Intercomparison Project,

  • "OMIP": Ocean Model Intercomparison Project,

  • "PAMIP": Polar Amplification Model Intercomparison Project,

  • "PMIP": Palaeoclimate Modelling Intercomparison Project,

  • "RFMIP": Radiative Forcing Model Intercomparison Project,

  • "SIMIP": Sea Ice Model Intercomparison Project,

  • "ScenarioMIP": Scenario Model Intercomparison Project,

  • "VIACSAB": Vulnerability, Impacts, Adaptation and Climate Services Advisory Board,

  • "VolMIP": Volcanic Forcings Model Intercomparison Project

variable

A character vector indicating variable identifiers. The 12 most related variables for EPW are set as defaults. If NULL, all possible variables are returned. Default: c("tas", "tasmax", "tasmin", "hurs", "hursmax", "hursmin", "psl", "rss", "rls", "sfcWind", "pr", "clt"), where:

  • tas: Near-surface (usually, 2 meter) air temperature, units: K.

  • tasmax: Maximum near-surface (usually, 2 meter) air temperature, units: K.

  • tasmin: Minimum near-surface (usually, 2 meter) air temperature, units: K.

  • hurs: Near-surface relative humidity, units: ⁠%⁠.

  • hursmax: Maximum near-surface relative humidity, units: ⁠%⁠.

  • hursmin: Minimum near-surface relative humidity, units: ⁠%⁠.

  • psl: Sea level pressure, units: Pa.

  • rsds: Surface downwelling shortwave radiation, units: ⁠W m-2⁠.

  • rlds: Surface downwelling longwave radiation, units: ⁠W m-2⁠.

  • sfcWind: Near-surface (usually, 10 meters) wind speed, units: ⁠m s-1⁠.

  • pr: Precipitation, units: ⁠kg m-2 s-1⁠.

  • clt: Total cloud area fraction for the whole atmospheric column, as seen from the surface or the top of the atmosphere. Units: ⁠%⁠.

frequency

A character vector of sampling frequency. If NULL, all possible frequencies are returned. Default: "day". Possible values:

  • "1hr": sampled hourly,

  • "1hrCM": monthly-mean diurnal cycle resolving each day into 1-hour means,

  • "1hrPt": sampled hourly, at specified time point within an hour,

  • "3hr": sampled every 3 hours,

  • "3hrPt": sampled 3 hourly, at specified time point within the time period,

  • "6hr": sampled every 6 hours,

  • "6hrPt": sampled 6 hourly, at specified time point within the time period,

  • "day": daily mean samples,

  • "dec": decadal mean samples,

  • "fx": fixed (time invariant) field,

  • "mon": monthly mean samples,

  • "monC": monthly climatology computed from monthly mean samples,

  • "monPt": sampled monthly, at specified time point within the time period,

  • "subhrPt": sampled sub-hourly, at specified time point within an hour,

  • "yr": annual mean samples,

  • "yrPt": sampled yearly, at specified time point within the time period

experiment

A character vector indicating root experiment identifiers. The Tier-1 experiment of activity ScenarioMIP are set as defaults. If NULL, all possible experiment are returned. Default: c("ssp126", "ssp245", "ssp370", "ssp585").

source

A character vector indicating model identifiers. Defaults are set to 11 sources which give outputs of all 4 experiment of activity ScenarioMIP with daily frequency, i.e. "AWI-CM-1-1-MR", "BCC-CSM2-MR", "CESM2", "CESM2-WACCM", "EC-Earth3", "EC-Earth3-Veg", "GFDL-ESM4", "INM-CM4-8", "INM-CM5-0", "MPI-ESM1-2-HR" and "MRI-ESM2-0". If NULL, all possible sources are returned.

variant

A character vector indicating label constructed from 4 indices stored as global attributes in format ⁠r<k>i<l>p<m>f<n>⁠ described below. Default: "r1i1p1f1". If NULL, all possible variants are returned.

  • r: realization_index (⁠<k>⁠) = realization number (integer >0)

  • i: initialization_index (⁠<l>⁠) = index for variant of initialization method (integer >0)

  • p: physics_index (⁠<m>⁠) = index for model physics variant (integer >0)

  • f: forcing_index (⁠<n>⁠) = index for variant of forcing (integer >0)

replica

Whether the record is the "master" copy, or a replica. Use FALSE to return only originals and TRUE to return only replicas. Use NULL to return both the master and the replicas. Default: FALSE.

latest

Whether the record is the latest available version, or a previous version. Use TRUE to return only the latest version of all records and FALSE to return previous versions. Default: FALSE.

resolution

A character vector indicating approximate horizontal resolution. Default: c("50 km", "100 km"). If NULL, all possible resolutions are returned.

type

A single string indicating the intrinsic type of the record. Should be either "Dataset" or "File". Default: "Dataset".

limit

An integer indicating the maximum of matched records to return. Should be <= 10,000. Default: 10000.

data_node

A character vector indicating data nodes to be queried. Default to NULL, which means all possible data nodes.

Details

The Earth System Grid Federation (ESGF) is an international collaboration for the software that powers most global climate change research, notably assessments by the Intergovernmental Panel on Climate Change (IPCC).

The ESGF search service exposes a RESTful URL that can be used by clients to query the contents of the underlying search index, and return results matching the given constraints. With the distributed capabilities of the ESGF search, the URL at any Index Node can be used to query that Node only, or all Nodes in the ESGF system. esgf_query() uses the LLNL (Lawrence Livermore National Laboratory) Index Node.

The core Controlled Vocabularies (CVs) for use in CMIP6, including all activities, experiment, sources (GCMs), frequencies can be found at the WCRP-CMIP/CMIP6_CVs GitHub repo.

Value

A data.table::data.table with an attribute named response which is a list converted from json response. If no matched data is found, an empty data.table is returned. Otherwise, the columns of returned data varies based on the type:

References

https://github.com/ESGF/esgf.github.io/wiki/ESGF_Search_REST_API

Examples

## Not run: 
esgf_query(variable = "rss", experiment = "ssp126", resolution = "100 km", limit = 1)

esgf_query(variable = "rss", experiment = "ssp126", type = "File", limit = 1)

## End(Not run)


[Package epwshiftr version 0.1.4 Index]